mongodb的用户权限配置

孤者浪人 提交于 2020-01-19 19:03:45
3、mongo用户配置
Built-In Roles(内置角色): 
1. 数据库用户角色:read、readWrite; 
2. 数据库管理角色:dbAdmin、dbOwner、userAdmin; 
3. 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager; 
4. 备份恢复角色:backup、restore; 
5. 所有数据库角色:readAnyDatabase、readWriteAnyDatabaseuserAdminAnyDatabasedbAdminAnyDatabase 
6. 超级用户角色:root // 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner 、userAdmin、userAdminAnyDatabase) 
7. 内部角色:__system
---------------------
    3.1、管理员账号配置
下图中报错是权限不足,下面是之前的创建命令,
db.createUser({
         user:"root",
         pwd:"123456",
     roles:[
         {role:"userAdminAnyDatabase",db:"admin"},
     ]
})
修改命令:然后就可以执行关闭命令了
db.updateUser(
"root",
        {
           roles : [
                     {"role" : "userAdminAnyDatabase","db" : "admin"},
                     {"role" : "dbOwner","db" : "admin"},
                     {"role" : "clusterAdmin", "db": "admin"},
                     {"role" : "readAnyDatabase", "db": "admin"},
                   ]
        }
)
  
 3.2、一般数据库账号配置
 
1、创建数据库: use atpdc
db.createUser({
user:"yg",
pwd:"123456",
roles:[
        {role:"readWrite",db:"atpdc"},
        {role:"dbOwner",db:"atpdc"}
    ]
})
 
db.createUser({
user:"yg-admin",
pwd:"123456",
roles:[
        {role:"readWrite",db:"atpdc"},
        {role:"dbOwner",db:"atpdc"},
        {role:"dbAdmin",db:"atpdc"},
        {role:"userAdmin",db:"atpdc"}
    ]
})
 
4、robot连接(根据上面第3节创建的用户)
 
    4.1管理员账号连接
 
 
    4.2普通数据库连接
 
 
4.3连接的效果
 
五、mongo备份和恢复
 
5.1、备份 : mongodump -h dbhost -d dbname -o dbdirectory
./mongodump -h 127.0.0.1 -u atpdc -p 123456  -d atpdc -o /opt/mongodb-data-back
 
参数介绍:
-h:MongDB所在服务器地址,例如:127.0.0.1,当然也可以指定端口号:127.0.0.1:27017
-d:需要备份的数据库实例,例如:test
-o:备份的数据存放位置,例如:c:\data\dump,当然该目录需要提前建立,在备份完成后,系统自动在dump目录下建立一个test目录,这个目录里面存放该数据库实例的备份数据。
5.2、恢复:mongorestore -h <hostname><:port> -d dbname <path>(后面的路径是atpdc里面)
./mongorestore -h 127.0.0.1 -u atpdc -p 123456  -d atpdc /opt/mongodb-data-back/atpdc/
 
参数介绍:
--host <:port>, -h <:port>:MongoDB所在服务器地址,默认为: localhost:27017
--db , -d :需要恢复的数据库实例,例如:test,当然这个名称也可以和备份时候的不一样,比如test2
--drop:恢复的时候,先删除当前数据,然后恢复备份的数据。就是说,恢复后,备份后添加修改的数据都会被删除,慎用哦!
<path>:mongorestore 最后的一个参数,设置备份数据所在位置,例如:c:\data\dump\test。
你不能同时指定 <path> 和 --dir 选项,--dir也可以设置备份目录。
--dir:指定备份的目录,你不能同时指定 <path> 和 --dir 选项。
 
 
六、java代码地址,我的github
 
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!