CentOS7.4 安装mongodb
溫馨提示:我的環(huán)境是騰訊云自帶的CentOS7.4 x64 鏡像,本地環(huán)境是win10 x64 專業(yè)版,ssh工具是用的win10 自帶的cmd, 遠(yuǎn)程工具版本是Robo 3T 1.2.1 。
如果環(huán)境不一致,可能會(huì)出現(xiàn)無(wú)法預(yù)知的錯(cuò)誤。
1、去官網(wǎng)找到安裝包地址,復(fù)制下來(lái)。
官網(wǎng)地址:https://www.mongodb.com/download-center?jmp=nav#community
我使用的安裝包地址:https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.0.tgz
2、使用SSH登錄服務(wù)器,找一個(gè)文件夾存放安裝包,我這里使用的是 /usr
$ cd /usr
$ wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.0.tgz
第一步是定位到/usr文件夾,第二步是下載安裝包。
?
?
如圖所示進(jìn)度到100%時(shí),就是下載完成了。
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 一行的上面添加如下內(nèi)容:
#Set Mongodb
export PATH=/usr/mongodb/bin:$PATH
保存后通過(guò)下面的命令使環(huán)境變量生效:
$ cd ~
$ source /etc/profile
設(shè)置環(huán)境變量
5、創(chuàng)建數(shù)據(jù)庫(kù)目錄
$ cd /usr/mongodb
$ touch mongodb.conf
$ mkdir db
$ mkdir log
$ cd log
$ touch mongodb.log
6、修改mongodb配置文件。
vim /usr/mongodb/mongodb.conf
添加以下內(nèi)容
port=27017 #端口
dbpath= /usr/mongodb/db #數(shù)據(jù)庫(kù)存文件存放目錄
logpath= /usr/mongodb/log/mongodb.log #日志文件存放路徑
logappend=true #使用追加的方式寫(xiě)日志
fork=true #以守護(hù)進(jìn)程的方式運(yùn)行,創(chuàng)建服務(wù)器進(jìn)程
maxConns=100 #最大同時(shí)連接數(shù)
noauth=true #不啟用驗(yàn)證
journal=true #每次寫(xiě)入會(huì)記錄一條操作日志(通過(guò)journal可以重新構(gòu)造出寫(xiě)入的數(shù)據(jù))。
#即使宕機(jī),啟動(dòng)時(shí)wiredtiger會(huì)先將數(shù)據(jù)恢復(fù)到最近一次的checkpoint點(diǎn),然后重放后續(xù)的journal日志來(lái)恢復(fù)。
storageEngine=wiredTiger #存儲(chǔ)引擎有mmapv1、wiretiger、mongorocks
bind_ip = 0.0.0.0 #這樣就可外部訪問(wèn)了,例如從win10中去連虛擬機(jī)中的MongoDB
7、設(shè)置文件夾權(quán)限
$ cd /usr/mongodb
$ chmod 777 db
$ chmod 777 log
8、啟動(dòng)mongodb
$ cd ~
$ mongod --config /usr/mongodb/mongodb.conf
網(wǎng)友指正:最新版本mongodb已經(jīng)將--config 修改為 -f (本人尚未嘗試)
9、遠(yuǎn)程連接mongodb
官網(wǎng)下載robo 3t https://robomongo.org/download
安裝完后配置。
點(diǎn)擊creat
?
請(qǐng)?jiān)獠粍?dòng)填寫(xiě)
MongoDB之conf配置文件詳解
切換到ssh選項(xiàng)卡
?
按圖設(shè)置
?
點(diǎn)save保存
?
點(diǎn)連接
?
輸入服務(wù)器的登錄密碼
?
連接成功
10、如何關(guān)閉數(shù)據(jù)庫(kù)
查看pid
$ ps aux |grep mongodb
pid
$ sudo kill 5314
即可關(guān)閉數(shù)據(jù)庫(kù)
2018年7月30日補(bǔ)充:
授權(quán)登錄
在日常工作中我們不可能把數(shù)據(jù)庫(kù)設(shè)置為免認(rèn)證登錄并暴露在公網(wǎng)下,所以我們需要為數(shù)據(jù)庫(kù)添加用戶名和密碼,具體操作如下:(文章來(lái)自ChasenKaos,轉(zhuǎn)發(fā)請(qǐng)注明。謝謝 原文:https://www.jianshu.com/p/994bc7b19b26)
1、修改前文提到的conf文件,命令如下:
$ cd /usr/mongodb
$ vim mongodb.conf
打開(kāi)后如圖:
?
image.png
我們把noauth那一行,前面加上#,注釋掉。
再在最后一行添加 auth = true
完整代碼如下:
port=27017 #端口
dbpath= /usr/mongodb/db #數(shù)據(jù)庫(kù)存文件存放目錄
logpath= /usr/mongodb/log/mongodb.log #日志文件存放路徑
logappend=true #使用追加的方式寫(xiě)日志
fork=true #以守護(hù)進(jìn)程的方式運(yùn)行,創(chuàng)建服務(wù)器進(jìn)程
maxConns=100 #最大同時(shí)連接數(shù)
#noauth = true #不啟用驗(yàn)證
journal=true #每次寫(xiě)入會(huì)記錄一條操作日志(通過(guò)journal可以重新構(gòu)造出寫(xiě)入的數(shù)據(jù))。
#即使宕機(jī),啟動(dòng)時(shí)wiredtiger會(huì)先將數(shù)據(jù)恢復(fù)到最近一次的checkpoint點(diǎn),然后重放后續(xù)的journal日志來(lái)恢復(fù)。
storageEngine=wiredTiger #存儲(chǔ)引擎有mmapv1、wiretiger、mongorocks
bind_ip = 0.0.0.0 #這樣就可外部訪問(wèn)了,例如從win10中去連虛擬機(jī)中的MongoDB
auth = true #用戶認(rèn)證
保存退出。
2、關(guān)閉數(shù)據(jù)庫(kù),前文已經(jīng)提到了方法,我這里只做操作,如圖:
?
image.png
3、啟動(dòng)數(shù)據(jù)庫(kù),請(qǐng)參照前文方法,如圖:
?
image.png
插曲:在添加用戶名之前應(yīng)該先執(zhí)行./mongo命令先打開(kāi)mongodb數(shù)據(jù)庫(kù)
來(lái)自網(wǎng)友@OldX_cea8
4、依次執(zhí)行下列命令 添加用戶名
//使用admin數(shù)據(jù)庫(kù)
use admin//給admin數(shù)據(jù)庫(kù)添加管理員用戶名和密碼,用戶名和密碼請(qǐng)自行設(shè)置
db.createUser({user:"admin",pwd:"123456",roles:["root"]})//驗(yàn)證是否成功,返回1則代表成功
db.auth("admin", "123456")//切換到要設(shè)置的數(shù)據(jù)庫(kù),以test為例
use test//為test創(chuàng)建用戶,用戶名和密碼請(qǐng)自行設(shè)置。
db.createUser({user: "test", pwd: "123456", roles: [{ role: "dbOwner", db: "test" }]})
執(zhí)行完后,ctrl + c結(jié)束shell,并通過(guò)關(guān)閉,打開(kāi)進(jìn)行重啟數(shù)據(jù)庫(kù)。
5、通過(guò)robo 3t連接。
connection標(biāo)簽頁(yè)
?
connection標(biāo)簽頁(yè)
authentication標(biāo)簽頁(yè)
?
authentication標(biāo)簽頁(yè)
ssh標(biāo)簽頁(yè)
?
ssh標(biāo)簽頁(yè)
點(diǎn)擊save后,連接即可,如果出現(xiàn)報(bào)錯(cuò),請(qǐng)核對(duì)自己輸入的信息是否有誤。
總結(jié)
以上是生活随笔為你收集整理的CentOS7.4 安装mongodb的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Linux操作系统下文件作用
- 下一篇: 详解PHP实现定时任务的五种方法