標籤:密碼 pass 串連 localhost 設定 conf 效果 read test
需求:我們需要在一個mongodb上面建立兩個資料庫,每個資料庫的使用者名稱和密碼不一樣,講道理來說我們直接設定admin,就可以控制所有的資料庫,不過用起來總是感覺有各種問題,目前還不太熟悉mongodb,所以直接對不同的資料庫設定使用者名稱和密碼,可以達到預期的效果。用mongobooster測試的時候沒有輸入使用者名稱和密碼會看不到資料庫。
mongodb的使用者名稱和密碼是對應到每個具體的資料庫的。
這裡記錄一下一些命令:
1、首先我們啟動mongodb的時候,如果需要修改就以普通方式啟動
mongod -f /etc/mongod.conf
建立資料庫testlog
use logmanagerment
建立表
db.createCollection("Account")
這個時候如果重啟mongodb就能發現我們多了一個資料庫了,現在我們設定使用者名稱和密碼,密碼最好不要有@符號,放在url中可能衝突username:[email protected]:27017
db.createUser(
{
user: "username",
pwd: "password",
roles: [ {role:"readWrite", db:"testlog"} ]
}
)
建立另一個資料庫是一樣的,建立完了以後需要kill掉以前的mongodb進程,ps -ef| grep mongod,然後kill掉它,然後以許可權的方式啟動,mongod --auth -f /etc/mongod.conf,然後我們串連,發現許可權已經設定成功
2、如果我們需要修改已有的使用者名稱和密碼,首先需要關掉已有的mongodb進程,然後已普通方式啟動mongodb
use yourdatabase
db.changeUserPassword("username","password") //斷行符號後沒有反應,其實已經修改過來了,重啟mongodb,以需要許可權的方式啟動,就能看到效果了
mongodb設定使用者名稱和密碼