標籤:.com 如何 設定 img 開放 iptable 報錯 127.0.0.1 工具
mongodb資料庫啟動後,預設只能在本地使用,連接埠為27017,那麼如何設定讓它可以遠端存取呢?
1.修改設定檔mongodb.conf
命令:vim /etc/mongodb.conf
把 bind_ip=127.0.0.1 這一行注釋掉或者是修改成 bind_ip=0.0.0.0,最好是直接注釋掉,因為在centos下,使用bind_ip=0.0.0.0會報錯。
注意:設定遠端存取以後,密碼啟動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
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不匹配,所以失敗。
設定遠端連線訪問mongodb資料庫