問題: 在 CentOS7 中使用 docker 部署 MongoDB,通過 Navicat Premium 無法連接。
解決辦法:?
1、執(zhí)行命令,進入 mongodb 容器(mongodb-server 為容器名)
docker exec -it mongodb-server /bin/bash
2、在 mongodb 容器中執(zhí)行以下命令
#更新源
apt-get update
#安裝 vim
apt-get install vim
#修改 mongo 配置文件
vim /etc/mongod.conf.orig
[ps]-------------------------------------------------------------------------------------------
如果執(zhí)行 apt-get update 出現(xiàn)?Err:1 http://archive.ubuntu.com/ubuntu xenial InRelease
? Temporary failure resolving 'archive.ubuntu.com' 等錯誤,如下圖
則執(zhí)行 exit 命令退出容器,然后執(zhí)行?systemctl restart docker 命令,重啟 docker
然后執(zhí)行命令 docker start mongodb-server[容器名] 啟動容器
再次執(zhí)行 docker exec -it mongodb-server /bin/bash 進入容器
---------------------------------------------------------------------------------------------------------
將mongod.conf.orig文件中的bindIp: 127.0.0.1
注釋掉# bindIp: 127.0.0.1
?或者改成bindIp: 0.0.0.0
?即可開啟遠程連接。
bindIp表示的是監(jiān)聽的ip地址段,默認是127.0.0.1,也就是localhost,不能被外界訪問到,注釋掉這句代碼之后默認就是監(jiān)聽0.0.0.0也就是全部網(wǎng)段,由于是在局域網(wǎng)環(huán)境,可以這樣簡單設(shè)置保存(如果設(shè)置為某個具體的ip,則只有該ip能訪問)
3、防火墻設(shè)置,開放端口 27017
CentOS 7 采用了 firewalld 防火墻
如需要查詢是否開啟27017端口則輸入命令: firewall-cmd --query-port=27017/tcp
?需修改,輸入命令:?firewall-cmd --add-port=27017/tcp
4、再次連接 MongoDB,成功!?文章來源:http://www.zghlxwxcb.cn/news/detail-403514.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-403514.html
到了這里,關(guān)于Navicat Premium 連接 MongoDB 失敗: Cannot connect to MongoDB.No suitable servers found: ......的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!