我希望{/ 3}}在/etc/init.d/mongodb中配置相同内容。
我遇到了以下命令:
sudo mongod --port 27017 --dbpath /srv/mongodb/db0 --replSet rs0
但它没有成功。我的mongo配置为在自动启动上运行。 在运行--replSet选项之前,我运行了以下命令来停止正在运行的实例。
sudo service mongod stop
上面的两个命令都没有输出/错误但是当我运行rs.initiate()时,我得到以下错误:
{
"ok" : 0,
"errmsg" : "not authorized on admin to execute command { replSetInitiate: undefined }",
"code" : 13
}
从错误消息看,问题似乎是访问权限。任何人都可以提供任何指示吗?
另外,如果我使用上述命令成功,我是否需要对/etc/mongod.conf或/etc/init.d/mongodb进行任何更改,以便实例继续作为单节点副本运行?
答案 0 :(得分:2)
首先:有两种方法可以设置mongod进程的配置;要么(如在命令中找到的那样)作为命令行中的参数,配置文件mongod.conf中的或。您的设置似乎使用配置文件,因此您需要在命令行上put the replica set settings in the mongod.conf file,而不是。
其次:要在authentication is enabled的系统上运行rs.initiate()命令,您必须以permission to run this command
的用户身份进行身份验证