1. 程式人生 > >centos mongoDB開啟遠端訪問

centos mongoDB開啟遠端訪問

1.修改配置檔案mongod.conf  不同版本可能為 mongodb.conf

命令:vim /etc/mongod.conf

把 bindIp=127.0.0.1 這一行修改成 bindIp=0.0.0.0 不同版本可能是bind_ip

注意:設定遠端訪問以後,密碼啟動auth授權訪問,不然非常不安全,資料庫容易被攻擊,

具體修改請自行搜尋,已下配置可能和你的版本不一致

在配置檔案中修改如下:

# Turn on/off security.  Off is currently the default
#noauth = true
auth = true

-----------------------------------------------------------------------------------------------------------------------------------------

2.在mongo資料庫中新建使用者名稱和密碼:

在非授權模式下啟動資料庫,並使用mongo連線上資料庫,例如我們要新建meeting資料庫的使用者和密碼,則:

use meeting

db.createUser({user:"kimkat",pwd:"123456",roles:[{ role: "readWriteAnyDatabase", db: "meeting" }]})

注意:如果要新增meeting資料庫的使用者,請先use meeting,不然即使新增成功,也連線不上。

mongodb新增使用者的方法:https://docs.mongodb.com/manual/reference/method/db.createUser/index.html

mongodb內建的使用者角色:https://docs.mongodb.com/manual/core/security-built-in-roles/index.html

-----------------------------------------------------------------------------------------------------------------------------------------------

3.重啟mongodb服務

命令:/etc/init.d/mongodb restart 或 service mongod restart

2.1防火牆開放27017埠

命令:iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 27017 -j ACCEPT

注意:如果是雲伺服器,一般不用在系統內開啟埠,只要在伺服器管理介面開啟埠就可以了。

----------------------------------------------------------------------------------------------------------------------------------------------------

4.遠端連線

要連線的IP:116.85.12.51

命令:mongo 116.85.12.51:27017/meeting -u "kimkat" -p "123456"

這樣就可以連線到116.85.12.51的mongodb/meeting的資料庫了。

建議使用robo3t,mongovue,或者mongo compass等視覺化工具來連線,其中官方提供的mongo compass可以直接匯出csv檔案。

筆者嘗試了使用windows下的mongo.exe連線雲伺服器上的資料庫,結果因為shell和server不匹