在linux中 部署 mongo 數據庫服務端


1 首先需要一台linux服務器(我用的redhat linux,其它的也大同小異),

玩一玩的話,推薦亞馬遜上面去創建一個免費的linux服務器,有關具體創建linux服務器不在這贅述。

https://us-west-2.console.aws.amazon.com/ec2/v2/home?region=us-west-2#Instances:sort=instanceId

2 安裝MongoDB3.4社區版,配置MongoDB的yum源,輸入命令:(最好用root登錄,如果不是請在命令前加 sudu 命令)

vim /etc/yum.repos.d/mongodb-org-3.4.repo  

  

vim /etc/yum.repos.d/mongodb-org-3.4.repo  

按 i 進入編輯模式,輸入一下內容:

[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc

 然后按Esc  按 :wq  保存並且推出vim

3 開始安裝命令

 yum install mongodb-org

4 出現 Complete! 字樣 安裝成功后 配置SELinux

setenforce 0 

5 此時是可以啟動mongo了

systemctl start mongod.service

 然后輸入以下命令查看是否啟動成功了

systemctl status mongod.service

 出現的結果中有  active(running)的字樣代表啟動成功

6 此時還不能用客戶端連接成功,還需要防火牆配置  

如果是亞馬遜的服務器,需要到亞馬遜服務器管理平台上去設置27017端口

進入ec2管理面板,點擊安全組,選擇linux實例,點擊下面的入站

然后在linux服務器直接關閉防火牆(我用的是做測試用的,其實不關閉防火牆 只需開放27017端口也行的)

systemctl disable firewalld  #永久關閉
systemctl stop firewalld    #暫時關閉 下次重啟還有

設置開機啟動

systemctl enable mongod.service 

還需mongodb遠程訪問 編輯mongod.conf注釋bindIp(bindIp前面加#),並重啟mongodb. 

vim /etc/mongod.conf  

 

重新啟動mongo

systemctl restart mongod.service

以下附上幾個其它的命令 

#停止命令
systemctl start mongod
#刪除安裝包
yum erase $(rpm -qa | grep mongodb-org)
#刪除數據目錄 
rm -r /var/log/mongodb rm -r /var/lib/mongo

7重啟mongo后就可以直接用mongo客戶端工具連接了,此時驗證方式選擇none

8 登錄進去后就可以用客戶端創建其它用戶了,當然也可以直接用mongo shell操作

啟動mongo shell

mongo

輸入

use admin;
db.createUser({user:"jiang232",pwd:"jiang233",roles:["dbAdminAnyDatabase","readWriteAnyDatabase","root"]})

開啟登錄認證機制后,方可用用戶名密碼登錄,否則得用7步驟的登錄方式

vim /etc/mongod.conf
#追加上
security:
    authorization: "enabled"

然后重啟mongo

#重啟mongo服務
systemctl restart mongod

此時用客戶端連接,用剛剛創建的超級管理員賬號 jiang232  輸入密碼, 登錄驗證方式也變了。

 

到此mongo服務端已經完成創建,並客戶端能夠連接。

遇到的問題總結一下,主要是端口的問題,27017 端口開放需要3重設置,1亞馬遜端配置,2配置SELinux   3關閉防火牆。

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM