一、下载并解压MongoDB
1、下载MongoDB 取件码w2px
2、通过ftp软件上传的服务器上,我的位置:/root/softwares
3、解压并放在opt文件夹下:tar zxvf mongodb4.2.2.tgz -C /opt/
4、切换到 opt 目录:cd /opt
5、重命名 mv mongodb-linux-x86_64-rhel70-4.2.2 mongodb4
二、配置环境变量
1、vim /etc/profile
// /opt/mongodb4/bin 为当前需要新增的环境变量,$PATH为已有的环境变量,":"为拼接
2、export PATH=/opt/mongodb4/bin:$PATH
// 执行文件刷新环境变量
3、source /etc/profile
三、创建数据库目录
// 进入/opt/mongodb4目录 cd /opt/mongodb4 // 创建配置文件 touch mongodb.conf // 创建db目录 mkdir db // 创建log目录 mkdir log // 进入log目录 cd log // 创建log文件 touch mongodb.log
四、修改配置文件
vim /opt/mongodb4/mongodb.conf //写入以下内容 port=27177 #端口 默认端口是27017,但是mongodb特别容易被攻击,所以这里不建议使用默认端口 dbpath= /opt/mongodb4/db #数据库存文件存放目录,如果有数据盘最好放在数据盘里面 logpath= /opt/mongodb4/log/mongodb.log #日志文件存放路径 logappend=true #使用追加的方式写日志 fork=true #以守护进程的方式运行,创建服务器进程 maxConns=100 #最大同时连接数 auth=false #不启用验证,先不开启,配完用户在更改开启 journal=true #每次写入会记录一条操作日志(通过journal可以重新构造出写入的数据)。 #即使宕机,启动时wiredtiger会先将数据恢复到最近一次的checkpoint点,然后重放后续的journal日志来恢复。 storageEngine=wiredTiger #存储引擎有mmapv1、wiretiger、mongorocks bind_ip = 0.0.0.0 #0.0.0.0代表任何IP地址,如果写127.0.0.1那就只能本机访问,其他同理
五、设置文件夹权限
cd /opt/mongodb4 chmod 777 db // 赋予该目录可读可写可执行权限 chmod 777 log // 赋予该目录可读可写可执行权限
六、启动MongoDB
启动命令:mongod -f /opt/mongodb4/mongodb.conf
如果是新服务器,有可能会报下面的错误,原因是没有必要的依赖库
解决方法:去http://rpmfind.net/linux/rpm2html/search.php?query=libcrypto.so.10(OPENSSL_1.0.2)(64bit)&submit=Search ...&system=&arch=下载必要的依赖
下载下来之后直接安装就行了:安装命令:rpm -ivh compat-openssl10-1.0.2o-3.el8.x86_64.rpm
再次重启,就成功了
七、创建超级管理员
先登录mongo客户端
创建超级管理员:在阿里云上配置的,admin和root 都可以对表操作,但是在腾讯云上配置的,只有admin账号可以对标的操作。
八、修改配置文件,开启权限认证
vim /opt/mongodb4/mongodb.conf
九、重启MongoDB
在重启mongo之前,先说说怎么关闭mongo
linux 如何正确的关闭mongodb 有的朋友说可以通过下面的命令关闭mongodb: killall mongodb #or kill -9 mongo-pid 上面的方法确实可以关闭mongodb,但是正确的做法不是这样子的,mongodb提供了关闭数据库的命令:
首先需要进入到mongodb目录下bin/mongo,连接到mongodb,然后执行下面脚本:
use admin db.auth("root","你的密码") db.runCommand("shutdown") 上面第一行切换到admin数据库,第二行则是执行关闭操作 也可以使用db.shutdownServer()命令
关闭之后,再次重启:
十、Navicat连接
如果出现下面错误,多数情况下是,新服务器没有开放mongo的对外端口,在安全组(阿里云)或者防火墙(腾讯云)上开发端口
十一、设置mongo的开机启动
1.在/lib/systemd/system/目录下新建mongodb.service文件,内容如下:
[Unit] Description=mongodb After=network.target remote-fs.target nss-lookup.target [Service] Type=forking ExecStart=/opt/mongodb4/bin/mongod --config /opt/mongodb4/mongodb.conf ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/opt/mongodb4/bin/mongod --shutdown --config /opt/mongodb4/mongodb.conf PrivateTmp=true [Install] WantedBy=multi-user.target
1、其中ExecStart和ExecStop换成自己的mongo路径
2、更改权限: chmod 754 mongodb.service
3、启动服务:systemctl start mongodb.service
4、关闭服务:systemctl stop mongodb.service
5、开机启动:systemctl enable mongodb.service