给Mongodb设置账号密码
文章摘要
本文介绍了MongoDB设置用户名和密码的步骤:首先在admin数据库创建超级管理员账号,开启权限验证并重启服务。登录后,可为特定数据库设置独立账号。附录包括常用命令和角色说明。
[](https://blog.csdn.net/hbtj_1216/article/details/120875957)1 设置用户名和密码 ======================================================================= 1. 安装`MongoDB`。 2. 使用`mongo`工具连接数据库(双击打开就行,默认不需要认证账号)。 3. **设置超级管理员账号和密码** ```java use admin db.createUser({ user: 'admin', // 用户名(自定义) pwd: 'Abc123++', // 密码(自定义) roles:[{ role: 'root', // 使用超级用户角色 db: 'admin' // 指定数据库 }] }) ``` 设置完成,可以通过指令 `show users` 查看是否设置成功。 4. **开启权限验证** 找到`MongoDB`安装目录下的`bin`目录中的`mongod.cfg`文件,开启权限验证功能: ```java security: authorization: enabled ``` 5. 重启MongoDB服务 6. **使用mongo连接数据库,并登录超级管理员账号** 在没有认证之前,也可以使用`mongo`连接数据库,只不过不能执行其他指令。 以下是两种使用超级管理员账号登录数据库的方式: ```java // 方式一 mongo use admin db.auth('admin', 'Abc123++') // 方式二 mongo admin -u admin -p Abc123++ ``` 登录认证成功之后,就能正常操作数据库了。 7. **为数据库设置独立的登录账号** 除了设置超级管理员账号以外,还可以为每个数据库单独设置账号。 例如以下指令: ```java use myMongoDB // 跳转到需要添加用户的数据库 db.createUser({ user: 'tao', // 用户名 pwd: 'Abc123++', // 密码 roles:[{ role: 'readWrite', // 读写权限角色 db: 'myMongoDB' // 数据库名 }] }) ``` 以上指令,为自定义的数据库`myMongoDB`创建了一个用户`tao`,它具有对这个数据库的读写权限。 可以通过以下指令验证登录: ```java mongo myMongoDB -u tao -p Abc123++ ``` * * * [](https://blog.csdn.net/hbtj_1216/article/details/120875957)2 附录 ================================================================= 1. **常用命令** ```java show users // 查看当前库下的用户 db.dropUser('testadmin') // 删除用户 db.updateUser('admin', {pwd: '654321'}) // 修改用户密码 db.auth('admin', '654321') // 密码认证 ``` 2. **MongoDB 数据库默认角色** | 角色描述 | 角色标识 | | :-- | :-- | | 数据库用户角色 | read、readWrite | | 数据库管理角色 | dbAdmin、dbOwner、userAdmin | | 集群管理角色 | clusterAdmin、clusterManager、clusterMonitor、hostManager | | 备份恢复角色 | backup、restore | | 所有数据库角色 | readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、 dbAdminAnyDatabase | | 超级用户角色 | root | 本文转自 [https://blog.csdn.net/hbtj\_1216/article/details/120875957](https://blog.csdn.net/hbtj_1216/article/details/120875957),如有侵权,请联系删除。
作者头像
admin
分享技术与生活
打赏作者

评论

暂无评论,快来抢沙发吧~