Job for mongod.service failed. See “systemctl status mongod.service“ and “journalctl -xe“ for detail

关于mongo 有许多情况,我在这里教你们如何去看错误,针对错误我们来解决

首先我们这是一个mongod 启动的时候报的错误,在执行service mongod start 启动时候报错

Job for mongod.service failed. See "systemctl status mongod.service" and "journalctl -xe" for details.

此时你可以执行控制台直接执行systemctl status mongod.service 或者journalctl -xe 来查看错误,你会看到一下内容

Loaded: loaded (/etc/rc.d/init.d/mongod)

   Active: failed (Result: exit-code) since 一 2016-11-14 17:09:36 CST; 14s ago

     Docs: man:systemd-sysv-generator(8)

  Process: 27470 ExecStop=/etc/rc.d/init.d/mongod stop (code=exited, status=0/SUCCESS)

  Process: 28346 ExecStart=/etc/rc.d/init.d/mongod start (code=exited, status=1/FAILURE)

其实上面这些错误并不重要,重要的来了,

注意 ,网上说的删除 /var/lib/mongo/mongod.lock 文件,

建议不要这么做。我们也不知道数据文件是否会损坏,如果mongod.lock文件阻止mongod的启动,说明数据文件可能已经遭受到损坏,请对数据文件进行修复,而不是简单的删除该文件。而这里的mongod.lock文件存放的是:仅仅是启动mongod的进程号,如果对数据文件没有太重要的,你也可以删除,如果仍然无法启动,请参考一下万能解决方案

进阶:读日志解决问题

如果你是手动安装mongo,可以到指定的的log路径查找,
如果你是使用yum 安装的话,默认在/var/log/mongodb/mongod.log
建议下载 下来读取日志,方便一点,定位到你最近发生错误的位置
例子:我的日志:
在这里插入图片描述
第一个箭头列是日志级别列;主要看E 开头:我们找到错误行,也就是第二个箭头,上面说无法连接套接字文件,错误是不具有权限,

解决办法:

  1. 进入文件:
/tmp/
  1. 显示详细信息:
ll
  1. 你会看到:mongodb-27017.sock 以下的权限,正常点的这个文件所属用户和组都是mongod ,
srwxrwxrwx 1 root root  mongodb-27017.sock 

解决办法:

 chown mongod:mongod  mongodb-24000.sock 

意思是 :更改文件的用户和组权限,问题就此解决;

  1. 重新启动mongod 服务
service mongod start

启动成功,

总结

这是一个比较万能的办法,即便错误不是这个,你也可以进去日志查找原因,对于一个无头脑的错误,往往查看日志都能得到有效且具体问题根源,根据问题来进行针对性的解决,到你技术成长到一点的地步,问题基本上在日志身上都能得到解决,

展开阅读全文
©️2020 CSDN 皮肤主题: 数字20 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值