mongodb安装后无法启动问题记录
刚接触mongodb,安装后一直无法启动
[root@instance-tzrpac9e data]# systemctl start mongod
Job for mongod.service failed because the control process exited with error code. See "systemctl status mongod.service" and "journalctl -xe" for details.
然后查看systemctl status mongod.service和journalctl -xe查看信息,感觉有用的信息就是下面这句
ERROR: child process failed, exited with error number 100
从网上查了大量资料,大部分都说数据库锁住啦,但我这是第一次启动,怎么会锁住了?而且也没有lock文件。偶然发现有一篇记录mysql启动错误的博客,博主查看上面两个信息无果后又去查看mysql的服务日志,最终找到了原因,瞬间感觉有了出路,于是找到mongodb的日志文件,打开查看:
2018-07-01T16:27:19.935+0800 I CONTROL [initandlisten] options: { config: "/etc/mongod.conf", net: { bindIp: "0.0.0.0", port: 27017 }, processManagement: { fork: true, pidFilePa
th: "/var/run/mongodb/mongod.pid", timeZoneInfo: "/usr/share/zoneinfo" }, storage: { dbPath: "/mnt/mongodb/data/mongo", journal: { enabled: true } }, systemLog: { destination: "f
ile", logAppend: true, path: "/mnt/mongodb/log/mongod.log" } }
2018-07-01T16:27:19.935+0800 I STORAGE [initandlisten] exception in initAndListen: NonExistentPath: Data directory /mnt/mongodb/data/mongo not found., terminating
2018-07-01T16:27:19.935+0800 I CONTROL [initandlisten] now exiting
2018-07-01T16:27:19.935+0800 I CONTROL [initandlisten] shutting down with code:100
很明显,我改了配置文件中数据库内容的目录,但是并没有创建。创建好目录,再给个读权限,重新启动,果然成功啦!
总结:不要过度依赖systemctl status mongod.service和journalctl -xe,有时候这里面得内容反而会把我们带偏了。