问题

报错如下:

To see additional information in this output, start without the "--fork" option

无法启动 mongodb 服务,容易被误导为缺失参数问题,但其实不是,而是存在一个固定文件(mongod.lock文件)卡住了服务的运行。

正常情况下,mongodb 服务以配置文件启动命令如下:

mongod -f /home/env/mongodb/mongodb.conf

-f 指的是 --config

该配置文件内已经配置了 fork=true ,其实就是参数 -fork,必要的 --dbpath 和 --logpath 都也配置好,所以真正出问题的不是在配置文件或命令参数的问题。

解决方法

找到一个 mongod.lock 文件,直接删除了,这是 mongodb 不正常退出导致的,比如使用了 kill -9 命令强制退出mongo服务进程。

如下:

重点来了

虽然笔者依旧是参考了部分资料,总结了该方法,但是仍旧无法立马解决,不知是哪里出问题了,等了一段时间后,就正常启动,权限问题倒是有可能,不过这里列举可能的解决方向。

一是,dbpath 参数目录下的目录权限问题,命令配置:

chmod 0755 dbpath参数的data目录

传送门:一文搞定Linux文件权限

也就是让创建者拥有 读写和运行的权限,其他用户组只能读和运行,其他用户只能读和运行该目录内的文件,如下:

二是,你不是超级管理员root,只是一个拥有超级管理员权限的用户,但不是和 root 同一个用户组,所以只能读和运行,但却无法写文件,所以就无法创建新的 mongod.lock 文件,所以就无法启动 mongdb 服务。

参考链接

1.【已解决】Mongodb启动报错:about to fork child process, waiting until server is ready for connections.

2. Mongodb常见的问题

3. MongoDB:To see additional information in this output, start without the “–fork“ option

4. Manage mongod Processes

5. 启动mongodb报错“about to fork child process, waiting until server is ready for connections.“

6. mongodb无法使用fork启动问题

7. 系統不正常關機導致mongodb啟動失敗

8. ERROR: CHILD PROCESS FAILED, EXITED WITH ERROR NUMBER 14 TO SEE ADDITIONAL INFORMATION IN THIS

推荐阅读

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: