我使用以下链接安装了最新版本的mongodb(v4.0.5) https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat/ 现在,我正在按照以下教程中提供的说明尝试设置复制 但是,只要我在“ 2.通过发出以下命令在您自己的外壳窗口中启动mongod实例”处尝试该命令, 它给我以下错误 “未设置会话收集;请等到下一个会话刷新间隔:尚未配置复制”
我使用的命令:mongod --replSet rs0 --port 27019 --bind_ip localhost,[MY_IP] --dbpath / srv / mongodb / rs0-2 --smallfiles --oplogSize 128
该命令的更详细的输出如下:
const
我尝试遵循其他教程,在这些教程中,命令没有--ip_bind选项,但我仍然遇到相同的错误。 我尝试在网上搜索该特定错误,但没有找到解决我错误的方法。
答案 0 :(得分:0)
您需要使用rs.initiate()对其进行初始化。
启动后,您可以从其他终端运行该
mongo --eval 'rs.initiate();'
如果您熟悉docker,则可以重现错误和初始化:
docker run --rm -it mongo:4.0 /bin/bash -c "\
mongod --replSet rs0 --fork --logpath /var/log/mongodb/mongod.log &&\
sleep 5 &&\
mongo --eval 'rs.initiate();' &&\
tail -n +0 -f /var/log/mongodb/mongod.log"
我使用--fork来运行mongod作为守护进程,以便稍后可以调用rs.initiate()