源码安装可以参考菜鸟教程,不过每次安装总会出现问题,就选择yum方式安装了
- 编辑文件
vim /etc/yum.repos.d/mongo.repo # 新建并打开文件
- 添加以下代码并保存
[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/7Server/mongodb-org/4.4/x86_64/
gpgcheck=0
enabled=1
yum -y install mongodb-org
安装- 启动mongodb
systemctl enabled mongod
systemctl start mongod
- 如果没有报错,那么就表示安装成功了,如果报错,可以通过
journalctl -xe
命令查看报错原因,或者打开mongod.log查看错误日志:/var/log/mongodb/mongod.log
(一般是这个路径)
我遇到的问题是用户权限问题:
2021-02-23T23:34:04.744+0800 E NETWORK [initandlisten] Failed to unlink socket file /tmp/mongodb-27017.sock Operation not permitted
2021-02-23T23:34:04.744+0800 F - [initandlisten] Fatal Assertion 40486 at src/mongo/transport/transport_layer_asio.cpp 693
2021-02-23T23:34:04.744+0800 F - [initandlisten] \n\n***aborting after fassert() failure\n\n
这个问题是有个文件夹的所属用户不是属于mongod的,解决方法是删除掉这个文件夹,然后通过systemctl start mongod
再生成,就可以了(这个文件夹的路径是/tmp/mongodb-27017.sock
)
(注意安装过程中生成的文件的用户所有者不是root,而是mongod)
在本地使用Robo 3T连接服务器mongodb注意事项
- 服务器安装组需要开启27017这个端口
- mongodb需要设置允许外部访问
需要打开/etc/mongod.conf
这个文件,然后更改bindIp:0.0.0.0