centos7.2安裝和配置MongoDB

發(fā)布時(shí)間:2019/8/23 9:56:00

MongoDB的安裝和配置

2.1 從MongoDB官方下載適當(dāng)版本的軟件包,

https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.2.0.tgz

上傳到服務(wù)器上

下面以centos7.2 為例演示MongoDB數(shù)據(jù)庫(kù)的安裝過(guò)程

2.2 解壓軟件包后拷貝到/usr/local/mongodb目錄下

2.3 要?jiǎng)?chuàng)建MongoDB數(shù)據(jù)和日志目錄,默認(rèn)情況下,MongoDB使用mongod用戶(hù)帳戶(hù)運(yùn)行。創(chuàng)建后,將這些目錄的所有者和組設(shè)置為mongod:

2.4  為MongoDB配置SELinux

分別設(shè)置MongoDB數(shù)據(jù)目錄和MongoDB日志目錄的SELinux安全環(huán)境

2.5 配置環(huán)境變量

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

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

# source /etc/profile

2.6 創(chuàng)建mongodb配置文件

源碼包默認(rèn)沒(méi)有mongodb配置文件的,需要自己創(chuàng)建

文件位置:/usr/local/mongodb/mongodb.conf 文件內(nèi)容如下:

port=27017 #端口

dbpath= /usr/local/mongodb/data #數(shù)據(jù)庫(kù)存文件存放目錄

logpath= /usr/local/mongodb/logs/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

2.7 啟動(dòng)mongodb數(shù)據(jù)庫(kù)

# mongod -f /usr/local/mongodb/mongodb.conf

2.8 登入mongodb數(shù)據(jù)庫(kù)

MongoDB默認(rèn)用戶(hù)認(rèn)證是關(guān)閉的。默認(rèn)情況下沒(méi)有管理員帳戶(hù)。輸入mongo 指令可直接登入Mongodb數(shù)據(jù)庫(kù), 登入后可以查看到MongoDB數(shù)據(jù)庫(kù)的版本號(hào),可以進(jìn)行數(shù)據(jù)庫(kù)的操作。

2.9 創(chuàng)建管理員用戶(hù),開(kāi)啟用戶(hù)登錄認(rèn)證

2.9.1開(kāi)啟MongoDB數(shù)據(jù)庫(kù)用戶(hù)驗(yàn)證功能,需要修改Mongodb數(shù)據(jù)庫(kù)的主配置文件。編輯vi /usr/local/mongodb/mongodb.conf

設(shè)置noauth=false 即可啟用用戶(hù)驗(yàn)證

2.9.2進(jìn)入到管理數(shù)據(jù)庫(kù)

> use admin;

2.9.3 查看管理用戶(hù)root , 角色為root(只在admin數(shù)據(jù)庫(kù)中可用。 超級(jí)賬號(hào),超級(jí)權(quán)限)。

2.9.4 查看創(chuàng)建的管理員用戶(hù)root

2.9.5 驗(yàn)證用戶(hù)能否用

格式 db.auth(“用戶(hù)名”,”用戶(hù)密碼”) ,返回1為用戶(hù)驗(yàn)證成功。

2.9.6  重啟mongod服務(wù)

# killall  mongod

#  mongod -f /usr/local/mongodb/mongodb.conf

2.9.7  效果測(cè)試

對(duì)比 2.8 可以看出開(kāi)啟了用戶(hù)權(quán)限驗(yàn)證后再用mongo命令登入數(shù)據(jù)庫(kù),不能查看當(dāng)前實(shí)例下的數(shù)據(jù)庫(kù)列表信息,查看集合的時(shí)候會(huì)報(bào)查詢(xún)錯(cuò)誤、查詢(xún)失敗。

接下來(lái)我用剛才創(chuàng)建的root用戶(hù)來(lái)登錄Mongodb數(shù)據(jù)庫(kù),

# mongo -uroot -pyang123456 看下效果

可以看到用戶(hù)root是超級(jí)賬號(hào),具有超級(jí)權(quán)限。



Copyright© 2004-2020 河南海騰電子技術(shù)有限公司 版權(quán)所有   經(jīng)營(yíng)性ICP/ISP證 備案號(hào):B1-20180452   豫公網(wǎng)安備 41019702002018號(hào)    電子營(yíng)業(yè)執(zhí)照