我正在step 3尝试启用Mongo数据库身份验证。当我尝试通过Mongo shell创建一个完全按照方向指示的用户时,shell会报告:
TypeError:对象admin的属性'createUser'不是函数
我使用--auth选项启动了mongod并切换到了admin数据库。一如既往,帮助赞赏。
答案 0 :(得分:23)
如果您使用的是Mongo 2.4或更早版本,请使用addUser
代替createUser
。
Mongo 2.4
对读写用户以及dbAdmin角色使用此(如前所述here):
db.addUser( { user: "joe",
pwd: "secret",
roles: [ "readWrite", "dbAdmin" ]
} )
对于只读用户:
db.addUser( { user: "joe",
pwd: "secret",
roles: [ "read" ]
} )
(查看所有可能的用户角色here。)
Mongo 2.2
对于提及here的读/写用户:
use mydb;
db.addUser("joe", "secret");
对于提及here的只读用户:
use mydb;
db.addUser("joe", "secret", true);
答案 1 :(得分:17)
问题是我试图对mongod 2.4.9执行此功能,显然不支持。 2.6.0版本中不会出现此错误消息。