相关问题,未解决问题:MongoDB not using /etc/mongodb.conf after I changed dbpath
在Ubuntu 12.04上。 $ mongod --version
= db version v2.4.9
我想使用/etc/mongodb.conf的mongo服务(我认为开箱即用,但显然不是这样)。
$ cat /etc/mongodb.conf | grep dbpath
dbpath=/home/xyz/mongodb
$ cat /etc/mongodb.conf | grep logpath
logpath=/home/xyz/mongodb-logs
$ ll /home/xyz| grep mongo
drwxrwxr-x 2 mongodb mongodb 4096 Feb 19 11:58 mongodb/
drwxrwxr-x 2 mongodb mongodb 4096 Feb 19 11:58 mongodb-logs/
(说明说它应该是mongod
用户,但是不存在,而mongodb
没有,说明不正确?)
但每当我启动mongod
时,它都会尝试使用/ data / db:
ERROR: dbpath (/data/db/) does not exist.
我查看了init.d脚本,但没有看到配置路径的任何选项:
$ cat /etc/init.d/mongodb | grep config
# release without the 'show-config' command (introduced in
initctl show-config -e "$JOB"|grep -q '^ start on' || DISABLED=1
当我重新启动服务时,它似乎立即停止:
$ sudo service mongodb restart
stop: Unknown instance:
mongodb start/running, process 2495
$ sudo service mongodb status
mongodb stop/waiting
这是一个错误吗?它似乎忽略了配置文件。我知道我可以使用--dbpath或--config启动它,但如果没有提供dbpath,它不应该是读取配置文件吗?由于服务无法启动(显然)我在哪里可以找到导致它失败的错误?
答案 0 :(得分:2)
我遇到了类似的问题(在v3.2上),原因是我的/etc/mongod.conf
错误。我有以下内容:
replication:
replSet: rs0
应该是:
replication:
replSetName: rs0
通过sudo service mongod start
启动mongod失败,在日志中没有任何内容。修复配置允许mongod启动。
这实际上是在RHEL上,我验证了init脚本正在传递--config /etc/mongod.conf
。我假设它在Ubuntu上是一样的。