centos 中 mongodb 启动失败的修复

mongodb是使用centos的yum命令安装的,整个的安装过程如下:

1. 运行

yum info mongo-10gen
查看是否有mongodb源,如有跳至第3步。

2. 运行

vim /etc/yum.repos.d/10gen.repo
输入如下内容并保存
[10gen]
name=10gen Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64
gpgcheck=0

3. 运行

yum install mongo-10gen-server mongo-10gen
安装mongodb

4. 修改配置:

vim /etc/mongod.conf
修改了几个路径:
logpath=/data/log/mongodb/mongod.log
dbpath=/data/mongo
pidfilepath=/data/run/mongodb/mongod.pid

5. 启动mongodb:

service mongod start
失败了!!!!

直接命令行启动:
mongod
正常~~~

带配置文件启动:
mongod -f /etc/mongod.conf
正常~~~~

打开mongod启动文件:
vim /etc/init.d/mongod
将启动指令的后的>/dev/null 2>&1删除,再次使用service mongod start启动,显示如下错误:
ERROR: child process failed, exited with error number 1

百度之,有人提到是数据目录所有都问题,修改目录的所有者为mongod:mongod:
chown -R mongod.mongod /data/mongo
service mongod start仍然失败。

联想到/etc/mongod.conf中共修改了三个目录,于是将其都修改为mongod.mongod所有:
chown -R mongod.mongod /data/log/mongodb /data/run/mongodb
重新启动,终于正常了。

原文地址:https://www.cnblogs.com/matchless/p/4324078.html