CentOS7.4 安裝mongodb

溫馨提示:我的環(huán)境是騰訊云自帶的CentOS7.4 x64 鏡像,本地環(huán)境是win10 x64 專業(yè)版,ssh工具是用的win10 自帶的cmd, 遠程工具版本是Robo 3T 1.2.1 。
如果環(huán)境不一致,可能會出現(xiàn)無法預知的錯誤。

1、去官網找到安裝包地址,復制下來。
官網地址:https://www.mongodb.com/download-center?jmp=nav#community
我使用的安裝包地址:https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.0.tgz

2、使用SSH登錄服務器,找一個文件夾存放安裝包,我這里使用的是 /usr

$ cd /usr
$ wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.0.tgz

第一步是定位到/usr文件夾,第二步是下載安裝包。



如圖所示進度到100%時,就是下載完成了。

3、解壓縮安裝包,并重命名文件夾。

$ tar zxvf mongodb-linux-x86_64-4.0.0.tgz
$ mv mongodb-linux-x86_64-4.0.0 mongodb

第一步是解壓縮,第二步是重命名,如圖所示。


解壓縮
重命名

4、配置環(huán)境變量

$ vim /etc/profile

在 export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL 一行的上面添加如下內容:

#Set Mongodb
export PATH=/usr/mongodb/bin:$PATH

保存后通過下面的命令使環(huán)境變量生效:

$ cd ~
$ source /etc/profile
設置環(huán)境變量

5、創(chuàng)建數(shù)據庫目錄

$ cd /usr/mongodb
$ touch mongodb.conf
$ mkdir db
$ mkdir log
$ cd log
$ touch mongodb.log

6、修改mongodb配置文件。

vim /usr/mongodb/mongodb.conf

添加以下內容

port=27017 #端口
dbpath= /usr/mongodb/db #數(shù)據庫存文件存放目錄
logpath= /usr/mongodb/log/mongodb.log #日志文件存放路徑
logappend=true #使用追加的方式寫日志
fork=true #以守護進程的方式運行,創(chuàng)建服務器進程
maxConns=100 #最大同時連接數(shù)
noauth=true #不啟用驗證
journal=true #每次寫入會記錄一條操作日志(通過journal可以重新構造出寫入的數(shù)據)。
#即使宕機,啟動時wiredtiger會先將數(shù)據恢復到最近一次的checkpoint點,然后重放后續(xù)的journal日志來恢復。
storageEngine=wiredTiger  #存儲引擎有mmapv1、wiretiger、mongorocks
bind_ip = 0.0.0.0  #這樣就可外部訪問了,例如從win10中去連虛擬機中的MongoDB

7、設置文件夾權限

$ cd /usr/mongodb
$ chmod 777 db
$ chmod 777 log

8、啟動mongodb

$ cd ~
$ mongod --config /usr/mongodb/mongodb.conf
網友指正:最新版本mongodb已經將--config 修改為 -f (本人尚未嘗試)

9、遠程連接mongodb
官網下載robo 3t https://robomongo.org/download
安裝完后配置。

點擊creat

請原封不動填寫
切換到ssh選項卡

按圖設置

點save保存


點連接

輸入服務器的登錄密碼

連接成功

10、如何關閉數(shù)據庫
查看pid

$ ps aux |grep mongodb
pid
$ sudo kill 5314

即可關閉數(shù)據庫

2018年7月30日補充:

授權登錄
在日常工作中我們不可能把數(shù)據庫設置為免認證登錄并暴露在公網下,所以我們需要為數(shù)據庫添加用戶名和密碼,具體操作如下:(文章來自ChasenKaos,轉發(fā)請注明。謝謝 原文:http://www.itdecent.cn/p/994bc7b19b26

1、修改前文提到的conf文件,命令如下:

$ cd /usr/mongodb
$ vim mongodb.conf

打開后如圖:


image.png

我們把noauth那一行,前面加上#,注釋掉。
再在最后一行添加 auth = true
完整代碼如下:

port=27017 #端口
dbpath= /usr/mongodb/db #數(shù)據庫存文件存放目錄
logpath= /usr/mongodb/log/mongodb.log #日志文件存放路徑
logappend=true #使用追加的方式寫日志
fork=true #以守護進程的方式運行,創(chuàng)建服務器進程
maxConns=100 #最大同時連接數(shù)
#noauth = true #不啟用驗證
journal=true #每次寫入會記錄一條操作日志(通過journal可以重新構造出寫入的數(shù)據)。
#即使宕機,啟動時wiredtiger會先將數(shù)據恢復到最近一次的checkpoint點,然后重放后續(xù)的journal日志來恢復。
storageEngine=wiredTiger  #存儲引擎有mmapv1、wiretiger、mongorocks
bind_ip = 0.0.0.0  #這樣就可外部訪問了,例如從win10中去連虛擬機中的MongoDB
auth = true #用戶認證

保存退出。

2、關閉數(shù)據庫,前文已經提到了方法,我這里只做操作,如圖:


image.png

3、啟動數(shù)據庫,請參照前文方法,如圖:


image.png

插曲:在添加用戶名之前應該先執(zhí)行./mongo命令先打開mongodb數(shù)據庫
來自網友@OldX_cea8

4、依次執(zhí)行下列命令 添加用戶名

//使用admin數(shù)據庫
use admin

//給admin數(shù)據庫添加管理員用戶名和密碼,用戶名和密碼請自行設置
db.createUser({user:"admin",pwd:"123456",roles:["root"]})

//驗證是否成功,返回1則代表成功
db.auth("admin", "123456")

//切換到要設置的數(shù)據庫,以test為例
use test

//為test創(chuàng)建用戶,用戶名和密碼請自行設置。
db.createUser({user: "test", pwd: "123456", roles: [{ role: "dbOwner", db: "test" }]})

執(zhí)行完后,ctrl + c結束shell,并通過關閉,打開進行重啟數(shù)據庫。

5、通過robo 3t連接。
connection標簽頁


connection標簽頁

authentication標簽頁


authentication標簽頁

ssh標簽頁


ssh標簽頁

點擊save后,連接即可,如果出現(xiàn)報錯,請核對自己輸入的信息是否有誤。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容