折腾了一天,最后终于搞定了,记录一下,防止以后再遇到又要麻烦半天
用的是远程连接工具是MobaXterm,粘贴命令shift+insert(这个应该是Linux通用的)
1,卸载以前的包,没装过就跳过
1.暂停服务
sudo service mongod stop
#报错:Failed to stop mongod.service: Unit mongod.service not loaded.
#直接无视进入下一步,暂时不知道有啥影响,反正最后达到了目标
2.删除以前的包
sudo apt-get purge mongodb-org*
3.删除数据目录
sudo rm -r /var/log/mongodb
sudo rm -r /var/lib/mongodb
2,install
参照官方文档安装教程。
1,2.导入包管理系统密钥,以确保软件包的一致性和可靠性;为MongoDB创建一个文件列表
echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list
#如果在这一步出错
如:
error: https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 68818C72E52529D4
这样的错误,直接百度解决就好,NO_PUBKEY 68818C72E52529D4解决方案,运行:
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
3.重新加载本地包数据库
sudo apt-get update
4.安装MongoDB软件包
sudo apt-get install -y mongodb-org
如果报这样的错:
dpkg-deb: error: paste subprocess was killed by signal (Broken pipe)
Errors were encountered while processing:
/var/cache/apt/archives/mongodb-org-server_4.0.27_amd64.deb
/var/cache/apt/archives/mongodb-org-mongos_4.0.27_amd64.deb
/var/cache/apt/archives/mongodb-org-tools_4.0.27_amd64.deb
解决方案(中间的XXX是具体的名字):
sudo dpkg -i --force-overwrite /var/cache/apt/archives/XXX.deb
全部安装之后,运行:
sudo apt-get install -f
sudo apt autoremove
其他报错就百度解决
5.启动MongoDB服务程序
sudo service mongod start
6.检查是否成功启动,以及配置是否正确
vim /var/log/mongodb/mongod.log
进入后往下翻,应该会有这行(27017是mongo默认监听端口)
[initandlisten] waiting for connections on port 27017
确认之后直接退出
#按一下esc
#然后输入
:q
7.通过一下命令重启mongo
sudo service mongod restart
3,开启外网访问
#记得防火墙的27017端口,命令行,或者阿里云的控制台
1.先确认可以正常连接
输入mongo,或者mongo 127.0.0.1:27017,会看到这样的界面,
如果是:
就代表还是有问题,具体问题得自己排查了,我一开始用apt-get install mongodb就是老遇到这个问题,才重装的
2.修改配置文件
我修改了两个文件,一开始改的mongodb.conf,但是不起作用,后来就把mongod.conf的一起改了
vim /etc/mongod.conf
vim中按a进入插入模式
a
esc取消
ESC
输入:wq写入退出
:wq
添加感叹号代表强制执行,:q!代表强制退出
:wq!
把network这里改了,bindIP改成0.0.0.0
以及
vim /etc/mongodb.conf
4,测试外网连接
完美