-
更新操作: db.users.update({'currentVersion':3},{$set:{'currentVersion':5}})
-
首先安裝下載(略過)
-
mongod 啟動服務,有多重啟動方式,另外可配置各種啟動參數
mongod --config "D:/mongodb/server/mongo.cfg"
mongod --dbpath "D:\mongodb\server\data\db"
- show dbs
- use admin
- show tables
- 新建用戶 db.createUser({user:”賬號”,pwd:”密碼”,roles:[{“role”:”userAdmin”,”db”:”admin”},{“role”:”root”,”db”:”admin”},{“role”:”userAdminAnyDatabase”,”db”:”admin”}]})
Read:允許用戶讀取指定數據庫
readWrite:允許用戶讀寫指定數據庫
dbAdmin:允許用戶在指定數據庫中執行管理函數,如索引創建、刪除,查看統計或訪問system.profile
userAdmin:允許用戶向system.users集合寫入,可以找指定數據庫里創建、刪除和管理用戶
clusterAdmin:只在admin數據庫中可用,賦予用戶所有分片和復制集相關函數的管理權限。
readAnyDatabase:只在admin數據庫中可用,賦予用戶所有數據庫的讀權限
readWriteAnyDatabase:只在admin數據庫中可用,賦予用戶所有數據庫的讀寫權限
userAdminAnyDatabase:只在admin數據庫中可用,賦予用戶所有數據庫的userAdmin權限
dbAdminAnyDatabase:只在admin數據庫中可用,賦予用戶所有數據庫的dbAdmin權限。
root:只在admin數據庫中可用。超級賬號,超級權限(本次創建的就是超級賬號)
-
對賬號授權:db.auth(“賬號”,”密碼”)
-
重啟mongo 加上 --auth 參數
-
此時如不使用用戶名密碼登錄,show dbs, 和 show tables 都無權限
-
使用賬號密碼登錄:mongo -u admin -p 12345 localhost:27017/admin (該賬戶admin,雖然是admin庫中的用戶,但是具有所有數據庫的權限:userAdminAnyDatabase
) -
以下為mongo.cfg的簡單配置
dbpath=D:\mongodb\server\data\db
logpath=D:\mongodb\server\log\mongo.log
logappend=true
port=27017
auth=true