一、tokumx 2.4 用户管理操作
db.isMaster()
use admin
db.addUser("root","rootpwd") 默认为管理员用户
db.auth("root","rootpwd") 验证用户
db.system.users.find() 查看用户
db.system.users.update({"user":"zayhuroot"},{"$set":{"roles":["userAdminAnyDatabase","dbAdminAnyDatabase","clusterAdmin"]}}) 更新用户的roles
db.system.users.find()
db.system.users.remove({"user":"root"}) 删除指定用户
二、mongodb3.2 管理用户操作方法总结:
db.addUser() Deprecated. Adds a user to a database, and allows administrators to configure the user’s privileges.
db.changeUserPassword() Changes an existing user’s password.
db.createUser() Creates a new user.
db.dropAllUsers() Deletes all users associated with a database.
db.dropUser() Removes a single user.
db.getUser() Returns information about the specified user.
db.getUsers() Returns information about all users associated with a database.
db.grantRolesToUser() Grants a role and its privileges to a user.
db.removeUser() Deprecated. Removes a user from a database.
db.revokeRolesFromUser() Removes a role from a user.
db.updateUser() Updates user data.
db.grantRolesToUser( "myuser" , [ { role: "dbOwner", db: "mydb" } ])
db.system.users.find()
三、在mongo 3.2上创建集群时遇到的一些问题
配置文件略...
zayhurs2:PRIMARY> rs.initiate()
zayhurs2:PRIMARY> rs.add("mongo04-mb:27027")
2016-10-12T17:15:03.927+0800 E QUERY [thread1] Error: count failed: { "ok" : 0, "errmsg" : "not authorized on local to execute command { count: \"system.replset\", query: {}, fields: {} }", "code" : 13 } : _getErrorWithCode@src/mongo/shell/utils.js:25:13 DBQuery.prototype.count@src/mongo/shell/query.js:370:11 DBCollection.prototype.count@src/mongo/shell/collection.js:1713:12 rs.add@src/mongo/shell/utils.js:1143:1 @(shell):1:1
zayhurs2:PRIMARY> admin.createUser(
... {
... user: "root",
... pwd: "rootpwd",
... roles: [
... { role: "userAdminAnyDatabase", db: "admin" },
... { role: "clusterAdmin", db: "admin" },
... { role: "root", db: "admin" }
... ]
... }
... )
zayhurs2:PRIMARY> show dbs
2016-10-12T17:21:35.797+0800 E QUERY [thread1] Error: listDatabases failed:{ "ok" : 0, "errmsg" : "not authorized on admin to execute command { listDatabases: 1.0 }", "code" : 13 } : _getErrorWithCode@src/mongo/shell/utils.js:25:13 Mongo.prototype.getDBs@src/mongo/shell/mongo.js:62:1 shellHelper.show@src/mongo/shell/utils.js:761:19 shellHelper@src/mongo/shell/utils.js:651:15 @(shellhelp2):1:1
zayhurs2:PRIMARY> db.getSiblingDB("admin").auth("root","rootpwd")
1
zayhurs2:PRIMARY> show dbs
admin 0.000GB
local 0.000GB
zayhurs2:PRIMARY> rs.add("mongo04-mb:27027")
{ "ok" : 1 }
zayhurs2:PRIMARY> rs.status()
{ "set" : "zayhurs2", "date" : ISODate("2016-10-12T09:22:53.435Z"), "myState" : 1, "term" : NumberLong(1), "heartbeatIntervalMillis" : NumberLong(2000), "members" : [ { "_id" : 0, "name" : "mongo03-mb:27027", "health" : 1, "state" : 1, "stateStr" : "PRIMARY", "uptime" : 1095, "optime" : { "ts" : Timestamp(1476264168, 1), "t" : NumberLong(1) }, "optimeDate" : ISODate("2016-10-12T09:22:48Z"), "electionTime" : Timestamp(1476263343, 2), "electionDate" : ISODate("2016-10-12T09:09:03Z"), "configVersion" : 2, "self" : true }, { "_id" : 1, "name" : "mongo04-mb:27027", "health" : 1, "state" : 2, "stateStr" : "SECONDARY", "uptime" : 5, "optime" : { "ts" : Timestamp(1476264168, 1), "t" : NumberLong(1) }, "optimeDate" : ISODate("2016-10-12T09:22:48Z"), "lastHeartbeat" : ISODate("2016-10-12T09:22:52.243Z"), "lastHeartbeatRecv" : ISODate("2016-10-12T09:22:50.301Z"), "pingMs" : NumberLong(0), "configVersion" : 2 } ], "ok" : 1 }
zayhurs2:PRIMARY>
zayhurs2:PRIMARY> use news
switched to db news
zayhurs2:PRIMARY> db.createUser(
... { user:"news",pwd:"newspwd",
... roles:[ {role:"readWrite",db:"news"},
... {role:"dbAdmin",db:"News"} ]
... })
zayhurs2:PRIMARY> db.getUsers()
[ { "_id" : "news.news", "user" : "news", "db" : "news", "roles" : [ { "role" : "readWrite", "db" : "news" }, { "role" : "dbAdmin", "db" : "News" } ] } ]
zayhurs2:PRIMARY> db.updateUser("news",
... {
... roles:[
... { "role" : "readWrite","db" : "news" },
... { "role" : "dbAdmin","db" : "news" }
... ]
... }
... )
zayhurs2:PRIMARY> db.getUsers()
[ { "_id" : "news.news", "user" : "news", "db" : "news", "roles" : [ { "role" : "readWrite", "db" : "news" }, { "role" : "dbAdmin", "db" : "news" } ] } ]
zayhurs2:PRIMARY> db.dropUser("news")
true
zayhurs2:PRIMARY> db.dropDatabase()
{ "ok" : 1 }
转载于:https://blog.51cto.com/caiyuanji/1861591