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ù)庫的安裝過程
2.2 解壓軟件包后拷貝到/usr/local/mongodb目錄下
2.3 要創(chuàng)建MongoDB數(shù)據(jù)和日志目錄,默認(rèn)情況下,MongoDB使用mongod用戶帳戶運(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)容:
保存后通過下面的命令使環(huán)境變量生效:
# source /etc/profile
2.6 創(chuàng)建mongodb配置文件
源碼包默認(rèn)沒有mongodb配置文件的,需要自己創(chuàng)建
文件位置:/usr/local/mongodb/mongodb.conf 文件內(nèi)容如下:
port=27017 #端口
dbpath= /usr/local/mongodb/data #數(shù)據(jù)庫存文件存放目錄
logpath= /usr/local/mongodb/logs/mongodb.log #日志文件存放路徑
logappend=true #使用追加的方式寫日志
fork=true #以守護(hù)進(jìn)程的方式運(yùn)行,創(chuàng)建服務(wù)器進(jìn)程
maxConns=100 #最大同時連接數(shù)
noauth=true #不啟用驗(yàn)證
journal=true #每次寫入會記錄一條操作日志(通過journal可以重新構(gòu)造出寫入的數(shù)據(jù))。
#即使宕機(jī),啟動時wiredtiger會先將數(shù)據(jù)恢復(fù)到最近一次的checkpoint點(diǎn),然后重放后續(xù)的journal日志來恢復(fù)。
storageEngine=wiredTiger #存儲引擎有mmapv1、wiretiger、mongorocks
bind_ip = 0.0.0.0 #這樣就可外部訪問了,例如從win10中去連虛擬機(jī)中的MongoDB
2.7 啟動mongodb數(shù)據(jù)庫
# mongod -f /usr/local/mongodb/mongodb.conf
2.8 登入mongodb數(shù)據(jù)庫
MongoDB默認(rèn)用戶認(rèn)證是關(guān)閉的。默認(rèn)情況下沒有管理員帳戶。輸入mongo 指令可直接登入Mongodb數(shù)據(jù)庫, 登入后可以查看到MongoDB數(shù)據(jù)庫的版本號,可以進(jìn)行數(shù)據(jù)庫的操作。
2.9 創(chuàng)建管理員用戶,開啟用戶登錄認(rèn)證
2.9.1開啟MongoDB數(shù)據(jù)庫用戶驗(yàn)證功能,需要修改Mongodb數(shù)據(jù)庫的主配置文件。編輯vi /usr/local/mongodb/mongodb.conf
設(shè)置noauth=false 即可啟用用戶驗(yàn)證
2.9.2進(jìn)入到管理數(shù)據(jù)庫
> use admin;
2.9.3 查看管理用戶root , 角色為root(只在admin數(shù)據(jù)庫中可用。 超級賬號,超級權(quán)限)。
2.9.4 查看創(chuàng)建的管理員用戶root
2.9.5 驗(yàn)證用戶能否用
格式 db.auth(“用戶名”,”用戶密碼”) ,返回1為用戶驗(yàn)證成功。
2.9.6 重啟mongod服務(wù)
# killall mongod
# mongod -f /usr/local/mongodb/mongodb.conf
2.9.7 效果測試
對比 2.8 可以看出開啟了用戶權(quán)限驗(yàn)證后再用mongo命令登入數(shù)據(jù)庫,不能查看當(dāng)前實(shí)例下的數(shù)據(jù)庫列表信息,查看集合的時候會報(bào)查詢錯誤、查詢失敗。
接下來我用剛才創(chuàng)建的root用戶來登錄Mongodb數(shù)據(jù)庫,
# mongo -uroot -pyang123456 看下效果
可以看到用戶root是超級賬號,具有超級權(quán)限。
海騰公告海騰數(shù)據(jù)最新新聞公告
400-6717-361
Copyright© 2004-2020 河南海騰電子技術(shù)有限公司 版權(quán)所有 經(jīng)營性ICP/ISP證 備案號:B1-20180452 豫公網(wǎng)安備 41019702002018號 電子營業(yè)執(zhí)照