【发布时间】:2016-08-05 06:46:36
【问题描述】:
我想在 mongodb 中创建新的 root 用户,该用户可以访问任何数据库、任何集合并以 root 身份执行所有操作。
以下是我的mongoid.yml 文件
development:
clients:
default:
database: mydb_development
hosts:
- localhost:27017
options:
user: rootuser
password: 12345
options:
raise_not_found_error: false
我阅读了文档并创建了新的rootuser
use admin
db.createUser({user: 'rootuser', pwd: '12345', roles: ['root']});
它成功创建了用户,但只能访问admin 数据库而不是任何数据库。
Mongo::Auth::Unauthorized (User rootuser is not authorized to access mydb_development.):
另一方面,当我想在 mydb_developmentmyrootuser 中添加新的 root 用户时
use mydb_development
db.createUser({user: 'rootuser', pwd: '12345', roles: ['root']});
我无法创建新用户并出现错误:
Error: couldn't add user: No role named root@mydb_development :
所以问题是:如何添加具有root权限的新用户并能够通过mongoid.yml使用它?
MongoDB shell 版本:3.2.10
【问题讨论】:
标签: ruby-on-rails ruby mongodb