1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
| --登录 mongo 或者是 mongo -u admin -p 123456
--切换数据库(数据库如果不存在就会创建) use 数据库名
--用户角色 read:允许用户读取指定数据库。 readWrite:允许用户读写指定数据库。 dbAdmin:允许用户在指定数据库中执行管理函数,例如索引创建与删除,查看统计或访问 system.profile。 userAdmin:允许用户向 system.users 集合写入,可以在指定数据库里创建、删除和管理用户。 clusterAdmin:只能在 admin 数据库中创建此角色用户,赋予用户所有分片和复制集相关函数的管理权限。 readAnyDatabase:只能在 admin 数据库中创建此角色用户,赋予用户所有数据库的读权限。 readWriteAnyDatabase:只能在 admin 数据库中创建此角色用户,赋予用户所有数据库的读写权限。 userAdminAnyDatabase:只能在 admin 数据库中创建此角色用户,赋予用户所有数据库的 userAdmin 权限。 dbAdminAnyDatabase:只能在 admin 数据库中创建此角色用户,赋予用户所有数据库的 dbAdmin 权限。 root:只能在 admin 数据库中创建此角色用户,超级账号,超级所有权限。其实 dbOwner 、userAdmin、userAdminAnyDatabase 角色间接或直接提供了系统超级用户的权限。 数据库用户角色有: read readWrite 数据库管理员角色有: dbAdmin dbOwner (包含 dbAdmin,readWrite,userAdmin) userAdmin 群集管理员角色有: clusterAdmin (包含 clusterManager,clusterMonitor,hostManager) clusterManager clusterMonitor hostManager 所有的数据库角色有: readAnyDatabase readWriterAnyDatabase userAdminAnyDatabase dbAdminAnyDatabase 超级用户角色 root(包含 readWriteAnyDatabase,dbAdminAnyDatabase,userAdminAnyDatabase,clusterAdmin)
--创建超级管理员用户 use admin db.createUser({user: "root",pwd: "123456",roles: [ { role: "root", db: "admin" } ]});
--创建admin库的管理员,只用来作为用户权限的管理 use admin db.createUser({user: "admin",pwd: "123456",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]});
--创建普通数据库的用户(需要先切换到该数据库再来创建用户) use test db.createUser({user: "test",pwd: "123456",roles: [ { role: "dbOwner", db: "test" } ]});
--对于用户的操作需要切换到admin库下才可以 --删除用户 use admin db.dropUser("test")
--查看系统用户 use admin db.system.users.find()
--修改用户密码 use admin db.changeUserPassword("test", "12345")
--认真测试,用于测试用户是否正确,需要切换到用户所属的数据库才可以测试 use test db.auth("test", "123456")
--数据库列表 show dbs 或者是 show database
--显示当前数据库 db
--删除数据库 db.dropDatabase()
|