我在ubuntu上有一个运行MongoDB2.6的测试服务器。同样的版本正在我的macbook上运行。在这两台机器中,我使用标准的升级机制从MongoDB2.4升级。现在我需要设置基于用户名和密码的身份验证。
在我的mac上,我使用brew更新将mongodb更新为2.6。我
我在我的Mac上尝试了以下命令
$mongo
>db.getSiblingDatabase('admin')
>db.createUser({user:"root", pwd:"mycomplexpassword", roles:[ "userAdminAnyDatabase", "readWrite" ] } )我得到了以下错误
Error: couldn't add user: User and role management commands require auth data to have schema version 3 but found 1 at src/mongo/shell/db.js:1004因此,我无法启用mongodb。如何解决这个问题?在谷歌搜索错误时,现在似乎没有任何有用的信息。
PS:当我在服务器上向mongodb添加身份验证时,是否也会出现相同的问题?
发布于 2014-05-07 16:45:40
在mongo控制台中尝试此命令
db.getSiblingDB("admin").runCommand({authSchemaUpgrade: 1 });升级授权架构。
发布于 2015-04-16 06:15:58
我认为上述答案是正确的,但使我成功的是以下步骤(F.Y.I,我在2.6.8版):
1.在蒙戈跑:
db.system.version.update({}, {$set: {currentVersion: 3}});2.在蒙戈跑:
db.getSiblingDB("admin").runCommand({authSchemaUpgrade: 1 });3.在蒙戈跑:
db.createUser(
{
user: “your_user_name”,
pwd: “your_password”,
roles: [ { role: "userAdminAnyDatabase", db:"admin" } ]
}
)auth=truemongod --dbpath /data/dbmongo admin -u 'your_use_name' -p 'your_password'发布于 2015-01-18 02:41:54
我的mongoDb版本2.6.5在下面命令中发出
db.system.version.update({}, {$set: {currentVersion: 3}});
https://stackoverflow.com/questions/23468137
复制相似问题