问题
在docker中安装的mongo连接不上,报错信息
feng@ubuntu:/etc/docker$ mongo
MongoDB shell version v3.6.3
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 4.2.7
WARNING: shell and server versions do not match
解决
- 原因:
在网上搜了一下,是因为mongo服务器版本和客户端版本不匹配的原因! - 解决方法:那只能让他俩保持一致了~
因为我的mongo server 是装在docker里的,刚开始为了省事,不想动docker,我想着是不是可以把把客户端(3.6)升级到和服务端(4.2)一致.
但是ubuntu下怎么升级mongo到4.2真的是难到我了,百度试了n多方法,还是不行,
最终我只能反过来,去把docker里的mongo server版本降下来。。
步骤
docker的安装这里不讲了···
-
docker安装mogo
sudo docker pull mongo
默认的这个命令安装的是最新的mongo -
安装mongo3.6
sudo docker pull mongo:3.6
安装完成之后这里还有一个坑
-
启动mongo
sudo docker run -p 27017:27017 -d mongo --auth
这里是在docker中启动mongo 然后把端口映射出来, 但是后面的mongo一定要修改成mongo3.6 (不然他会自动去帮你下载最新的mongo然后安装执行) -
正确命令
sudo docker run -p 27017:27017 -d mongo3.6 --auth
感悟
其实这篇文章我是不想写的,因为并没有什么实质性的收获,只是解决了一个安装过程中的小bug
但是想到从我遇到这个问题 -- 到我解决这个问题所花的时间(1h+)
顺带想到每每我遇到一个问题,可以刚好在百度找到解决方法的那种心情
我觉得还是要输出一下,也许这个问题很白痴,也可能这个问题对于大佬来说没压根就不是什么问题,
但是对于一些像我这样的小白来说最起码是可以少走很多弯路···
前人栽树,后人乘凉 希望未来我能一直秉承这份初心❤