MongoDB创建root角色用户(超级管理员)

身居漏室,心系天下

MongoDB刚完成安装的时候,默认是不需要进行用户验证,直接可以连接mongod服务的实例,对数据库进行各种读写操作,执行各种命令,这样的好处是方便进行测试。在生产环境部署mongod服务实例是,刚必须开启安全认证,为数据库连接设置管理账号。

在开启安全认证之前,我们首先要建立一个管理员账号,可进行其它用户的添加,删除,修改操作。root角色的用户可以做MongoDB的各种操作,没有任何限制,类似于mysql的root账号。

添加root角色用户的方法如下。

在客户端命令行下,输入如下指令

mongo 192.168.11.6:27017   

说明:上面的"192.168.11.6:27017"根据实际情况修改,以上只是举例。

接下来:

use admin

回车
  
db.createUser(
  {
    user: "root",
    pwd: "123456",
    roles:
    [ "root"]
  }
)

回车

这样就建立了一个超级管理员账号,可用db.system.users.find()查看。

在服务器端为mongod服务开始授权,首先停止mongod服务,修改/etc/mongod.conf配置文件,设置auth=true,保存文件。如下图

说明:"/etc/mongod.conf"是配置文件保存位置,根据你的实际情况可保存在不同位置。

重启mongod服务实例

mongod --config /etc/mongod.conf

这样客户端连接数据库,对数据库进行各种操作就需要授权了。可用如下命令:
use admin
db.auth('root','123456')

成功会返回1。

或者在连接时

mongo 192.168.11.6:27017  -u root -p 123456 --authenticationDatabase admin

京ICP备14008139号-1