我正在尝试设置一个副本集,但是当我发出:
rs.initiate()
在第一台服务器上,我收到以下错误:
{ "errmsg" : "need to login", "ok" : 0 }
不过这很奇怪,因为在我的配置auth: true
中被注释掉了。
有任何想法吗?
我正在尝试设置一个副本集,但是当我发出:
rs.initiate()
在第一台服务器上,我收到以下错误:
{ "errmsg" : "need to login", "ok" : 0 }
不过这很奇怪,因为在我的配置auth: true
中被注释掉了。
有任何想法吗?
您可能已经
auth: true
注释掉了,但是您是否在配置文件中指定了--auth
or或 or ?隐式设置启用身份验证,因此这可能是您的问题。--keyFile
keyFile
keyFile
如果您想完全确定,请暂时关闭
mongod
实例并手动启动它,仅明确指定基础知识(端口、副本集名称等)。至少你可以确定什么是启用的,什么是未启用的。对于正在运行的实例,您可以从该实例的日志文件顶部获取解析的当前选项 - 它们作为启动消息的一部分打印出来。您还可以通过运行来获取它们:(
getCmdLineOpts
请注意,尽管这需要管理员权限,因此如果您在运行时启用了身份验证并且没有定义管理员用户,您可能会看到问题)。