时间:2020-07-26来源:www.pcxitongcheng.com作者:电脑系统城
在mongodb里面的用户是属于数据库的,每个数据库有自己的管理员,管理员登录后,只能操作所属的数据库。
注意:一般在admin数据库中创建的用户授予超级管理员权限,登录后可以操作任何的数据库。
注意:在开启权限管理控制时,一定先要创建一个超级管理员授予超级管理权限。
登录mongodb的客户端,使用如下命令
use admin
db.createUser({user:'root',pwd:'123456',roles:[{role:'root',db:'admin'}]})
修改mongodb.conf文件,将noauth改为auth
#noauth=true
auth=true
systemctl restart mongodb.service
如果没有输入密码,进入MongoDB的客户端,进行操作,会报如下错误提示
本地连接:
mongo 数据库名称 -u 用户名 -p 密码
示例:mongo admin -u root -p 123456
远程连接:
mongo IP地址:端口/数据库名称 -u 用户名 -p 密码
我们以php库为例
use php
db.createUser({user:"php",pwd:"123456",roles: [{role:"dbOwner",db:"php"}]})
登录操作
(1)查看当前库下的用户
show users
(2)删除用户
db.dropUser("用户名")
(3)修改用户密码
db.changeUserPassword('root','rootNew');
db.updateUser( "admin",{pwd:"password"});
(4)密码认证
db.auth("用户名","密码")
前面我们是在mongo后面直接指定了用户名和密码,我们也可以在使用了mongo命令后再进行认证
(1)数据库用户角色:read、readWrite
(2)数据库管理角色:dbadmin、dbOwner
、userAdmin
(3)集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager
(4)备份恢复角色:backup、restore
(5)所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、 dbAdminAnyDatabase
(6)超级用户角色:root
2023-03-15
Navicat远程连接MongoDB最全实现方法以及报错解决2023-03-15
MongoDB的启动方法详细总结2023-03-11
详解分库分表后非分片键如何查询GROUP BY 语句用于结合合计函数,根据一个或多个列对结果集进行分组,下面这篇文章主要给大家介绍了关于高版本Mysql使用group by分组报错的解决方案,文中通过实例代码介绍的非常详细,需要的朋友可以参考下...
2023-03-06