一、环境
系统:Alibaba Cloud Linux
mongodb 版本:8.0.1
mongosh 版本:2.3.2
二、下载
1、下载mongodb
可以到这里下载
下载之前先看看自己的系统版本,使用如下命令:
看了一下好像没有对应的版本,因为和 CenOS 二者均是 Linux 操作系统的发行版本,完全兼容 CentOS 生态,这里选择的是 RedHat / Cenos 8.0 x64 平台的,如上图所示。
注意千万别下载带 ARM 的,我试过了,安装之后不能用
2、下载mongosh
MongoDB 从 4.2 版本开始,MongoDB Shell 已经从 MongoDB Server 中分离出来,形成了一个独立的项目名为 MongoDB Shell (mongosh)。
mongosh 是用于在服务器操作数据库的,如果后面使用 Navicat 等软件进行操作,也可以不下载安装。
这里安装的是 8.0.1 版本的,所以 mongosh 需要单独安装,mongosh 可以到这里下载
选好版本、平台和包类型,点击下载即可,我这里选择的是 2.3.2 版、Linux x64 平台、tgz 类型包。
三、安装
1、安装mongodb
先将安装包上传到服务器的某个目录,我这里是:
/usr/local/mongodb
解压,命令如下:
我的是:
- tar -zxvf mongodb-linux-x86_64-rhel8-8.0.1.tgz
复制代码
感觉解压后的文件名太长了,这里重命名一下,命令如下:
- mv mongodb-linux-x86_64-rhel88-8.0.1 mongodb-8.0.1
复制代码
进入根目录,创建数据存储目录,命令如下:
- mkdir -p /usr/local/mongodb/mongodb-8.0.1/data/db
复制代码
创建日志文件目录,命令如下:
- mkdir -p /usr/local/mongodb/mongodb-8.0.1/data/log
复制代码
再赋予目录读写权限,命令如下:
接着使用
编辑配置文件,配置文件名为 mongodb.conf ,文件内容如下:
- # mongod.conf
- # for documentation of all options, see:
- # http://docs.mongodb.org/manual/reference/configuration-options/
- # Where and how to store data.
- storage:
- #mongod实例存储其数据的目录。storage.dbPath设置仅适用于mongod
- dbPath: /usr/local/mongodb/mongodb-8.0.1/data/db
- #journal:
- #启用或禁用持久性日志以确保数据文件保持有效和可恢复。
- #enabled: true
- # where to write logging data.
- systemLog:
- #MongoDB发送所有日志输出的目标指定为文件
- destination: file
- #当mongos或mongod实例重新启动时,mongos或mongod会将新条目附加到现有日志文件的末尾
- logAppend: true
- #mongod或mongos应向其发送所有诊断日志记录信息的日志文件的路径
- path: /usr/local/mongodb/mongodb-8.0.1/data/log/mongod.log
- # network interfaces
- net:
- port: 27017
- # 远程连接要指定ip,否则无法连接;0.0.0.0代表不限制ip访问
- bindIp: 0.0.0.0
- processManagement:
- #启用在后台运行mongos或mongod进程的守护进程模式。
- fork: true
- #sharding:
- ## Enterprise-Only Options:
- #auditLog:
复制代码
确定无误后按 esc 键,输入“:wq”保存退出。
接着配置一下环境变量,使用如下命令编辑文件:
如果前面有其他环境变量可以像我这样使用“:”隔开,内容如下:
- export JAVA_HOME=/usr/local/jdk/jdk1.8.0_361
- export MONGODB_HOME=/usr/local/mongodb/mongodb-8.0.1
- export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/
- export PATH=$PATH:${JAVA_HOME}/bin:$MONGODB_HOME/bin
复制代码
再使用如下命令让配置文件生效
接着使用如下命令启动:
- mongod --config /usr/local/mongodb/mongodb-8.0.1/mongodb.conf
复制代码
再到浏览器使用
http://ip地址:27017
查看
看到这样的信息就代表启动成功了。注意关闭服务时不能使用 kill -9 ,会导致服务不能重启,可以到“四”看看。
2、安装mongosh
同样先将安装包上传到服务器的某个目录,我这里是:
然后解压,命令如下:
- tar -zxvf mongosh-2.3.1-linux-x64.tgz
复制代码
重命名文件为 mongosh-2.3.1 ,命令如下:
- mv mongosh-2.3.1-linux-x64 mongosh-2.3.1
复制代码
再配置一下环境变量,命令如下:
如果前面有其他环境变量可以像我这样使用“:”隔开,内容如下:
- export JAVA_HOME=/usr/local/jdk/jdk1.8.0_361
- export MONGODB_HOME=/usr/local/mongodb/mongodb-8.0.1
- export MONGOSH_HOME=/usr/local/mongosh/mongosh-2.3.1
- export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/
- export PATH=$PATH:${JAVA_HOME}/bin:$MONGODB_HOME/bin:$MONGOSH_HOME/bin
复制代码
接着让配置生效
再使用如下命令进入:
退出可以使用
或者 Ctrl + C
四、启动和关闭
1、启动
方式一:
- mongod --config /usr/local/mongodb/mongodb-8.0.1/mongodb.conf
复制代码
如果配置文件中没有配置 dbpath 和 logpath ,也可以使用如下命令:
- mongod -dbpath /usr/local/mongodb/mongodb-8.0.1/data/db -logpath /usr/local/mongodb/mongodb-8.0.1/data/log/mongod.log --config /usr/local/mongodb/mongodb-8.0.1/mongodb.conf
复制代码
方式二:
- mongod -f /usr/local/mongodb/mongodb-8.0.1/mongodb.conf
复制代码
2、关闭(重要,初次接触强烈建议看看)
不可以使用kill -9 !!!
不可以使用kill -9 !!!
不可以使用kill -9 !!!
重要的说三遍!
(1)、命令
方式一:可以在在启动命令的基础上加上 --shutdown ,命令如下:
- mongod --config /usr/local/mongodb/mongodb-8.0.1/mongodb.conf --shutdown
复制代码
方式二:可以在 mongosh 中关闭,使用如下方法:
(2)、为什么不能使用 kill -9 关闭?
mongodb 不能使用 kill -9 关闭服务,说是会破坏 mongodb 的数据,导致重启不了,我一开始就是使用这种方式,按照网上说的删除 lock 文件也不行
删除 /tmp 下的 sock 文件
删除将安装目录删除,重新装一遍也不行,死活重启不了,最后在再次重装时修改了文件名才重启成功,最初重命名 mongodb8.0.1 ,后面重命名为 mongodb-8.0.1 ,现在也没找到原因,希望知道的大佬评论区告知一下。