mongodb設置用戶名和密碼


需求:我們需要在一個mongodb上面新建兩個數據庫,每個數據庫的用戶名和密碼不一樣,講道理來說我們直接設置admin,就可以控制所有的數據庫,不過用起來總是感覺有各種問題,目前還不太熟悉mongodb,所以直接對不同的數據庫設置用戶名和密碼,可以達到預期的效果。用mongobooster測試的時候沒有輸入用戶名和密碼會看不到數據庫。

mongodb的用戶名和密碼是對應到每個具體的數據庫的。

這里記錄一下一些命令:

1、首先我們啟動mongodb的時候,如果需要修改就以普通方式啟動

  mongod -f /etc/mongod.conf

  新建數據庫testlog

  use logmanagerment

  創建表

  db.createCollection("Account")

  這個時候如果重啟mongodb就能發現我們多了一個數據庫了,現在我們設置用戶名和密碼,密碼最好不要有@符號,放在url中可能沖突username:password@localhost: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,以需要權限的方式啟動,就能看到效果了

 

 

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM