手把手教你設置MongoDB密碼

mongodb密碼和傳統數據如mysql等有些區別: mongodb的用戶名和密碼是基於特定數據庫的,而不是基於整個系統的。全部全部數據庫db都須要設置密碼。

1. 查看全部數據庫(在mongodb新版本里並無admin數據庫,可是並不妨礙第2步操做。)

show dbsmysql

2. 進入admin數據庫

use adminsql

3. 建立管理員帳戶

db.createUser({ user: "admin", pwd: "password", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] })mongodb

mongodb中的用戶是基於身份role的,該管理員帳戶的 role是 userAdminAnyDatabase。admin用戶用於管理帳號,不能進行關閉數據庫等操做。數據庫

4. 建立root

db.createUser({user: "root",pwd: "password", roles: [ { role: "root", db: "admin" } ]})code

建立完admin管理員,建立一個超級管理員root。角色:root。root角色用於關閉數據庫。blog

db.shutdownServer()索引

5. 建立用戶本身的數據庫的管理角色

use yourdatabaserem

db.createUser({user: "user",pwd: "password",roles: [ { role: "dbOwner", db: "yourdatabase" } ]})it

role: "dbOwner"表明數據庫全部者角色,擁有最高該數據庫最高權限。好比新建索引等當帳號管理員和超級管理員,能夠爲本身的數據庫建立用戶了。(坑)這時候必定,必定要切換到所在數據庫上去建立用戶,否則建立的用戶仍是屬於admin。bfc

若是是讀寫角色的話,權限設置爲role: "readWrite"

6. 查看用戶

show users

7. 刪除用戶

刪除用戶必須由帳號管理員來刪,因此,切換到admin角色

use admin

db.auth("admin","password")

刪除單個用戶

db.system.users.remove({user:"XXXXXX"})

刪除全部用戶

db.system.users.remove({})

可使用:mongodb://youruser:yourpassword2@localhost/yourdatabase 來鏈接到你的mongo

相關文章
相關標籤/搜索