Mongo服务重启异常问题的处理方法


Posted in MongoDB onJuly 01, 2021

发现问题

现在公司的服务器经常性断电,所以要经常性重启所有的服务,然而这些redis、mysql、mongo等服务中,mongo经常性出现重启失败的情况,根据之前的经验和网络上帖子的信息,这里记录一下总结;

首先说明一下,这里安装的服务都是通过yum 或者 apt 安装的,这是我一直推荐和使用的操作,因为这样安装整洁、该放什么类型的文件到哪个目录下都是一样的(如:/var/log/xxx/xxx.log)

报错主要问题如下:

[root@localhost mongo]# systemctl status mongod
● mongod.service - MongoDB Database Server
   Loaded: loaded (/usr/lib/systemd/system/mongod.service; enabled; vendor preset: disabled)
   Active: failed (Result: exit-code) since 一 2021-06-28 14:32:51 CST; 6s ago
     Docs: https://docs.mongodb.org/manual
  Process: 3351 ExecStart=/usr/bin/mongod $OPTIONS (code=exited, status=1/FAILURE)
  Process: 3348 ExecStartPre=/usr/bin/chmod 0755 /var/run/mongodb (code=exited, status=0/SUCCESS)
  Process: 3345 ExecStartPre=/usr/bin/chown mongod:mongod /var/run/mongodb (code=exited, status=0/SUCCESS)
  Process: 3343 ExecStartPre=/usr/bin/mkdir -p /var/run/mongodb (code=exited, status=0/SUCCESS)

6月 28 14:32:51 localhost systemd[1]: Starting MongoDB Database Server...
6月 28 14:32:51 localhost mongod[3351]: about to fork child process, waiting until server is ready for connections.
6月 28 14:32:51 localhost mongod[3351]: forked process: 3354
6月 28 14:32:51 localhost mongod[3351]: ERROR: child process failed, exited with 1
6月 28 14:32:51 localhost mongod[3351]: To see additional information in this output, start without the "--fork" option.
6月 28 14:32:51 localhost systemd[1]: mongod.service: control process exited, code=exited status=1
6月 28 14:32:51 localhost systemd[1]: Failed to start MongoDB Database Server.
6月 28 14:32:51 localhost systemd[1]: Unit mongod.service entered failed state.
6月 28 14:32:51 localhost systemd[1]: mongod.service failed.

看到异常的发生,并不能从其中获取到非常有效的信息,那就先去看下日志,在日志文件中可以看到一些有用的信息(这里没有及时记录截图,就先不放代码或截图了)

处理步骤:

使用mongo提供的修复工具,执行一下命令:

mongod --repair -f /etc/mongod.conf

这里说明下,有的帖子说,执行第一步之后,执行启动命令(如下所示:),其中携带指向新的dbpath和logpath参数,这样也能起来,但是你数据就丢了,而且不能每次都给指向新的目录吧。

mongod --port 27017 --dbpath /data/db  --logpath /var/log/mongod.log --fork

检查mongo的dbpath目录(默认:/var/lib/mongodb)下是否存在mongod.lock文件,如果有,将其删除;

检查dbpath目录(默认:/var/lib/mongodb),日志目录(默认:/var/lib/mongo)权限的问题,是否mongod.mongod 拥有操作权限,如果没有,就给mongod.mongod授权:

chown -Rc mongod. /var/log/mongodb

chown -Rc mongod. /var/lib/mongo

以上步骤执行完成,就能够重新启动mongodb服务了。

总结

到此这篇关于Mongo服务重启异常问题处理的文章就介绍到这了,更多相关Mongo服务重启异常内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

MongoDB 相关文章推荐
MongoDB orm框架的注意事项及简单使用
Jun 20 MongoDB
MongoDB安装使用并实现Python操作数据库
Jun 28 MongoDB
常用的MongoDB查询语句的示例代码
Jul 25 MongoDB
MongoDB日志切割的三种方式总结
Sep 15 MongoDB
MongoDB连接数据库并创建数据等使用方法
Nov 27 MongoDB
剖析后OpLog订阅MongoDB的数据变更就没那么难了
Feb 24 MongoDB
MongoDB误操作后使用oplog恢复数据
Apr 11 MongoDB
MongoDB支持的索引类型
Apr 11 MongoDB
MongoDB修改oplog大小的四种方法
Apr 11 MongoDB
SpringBoot集成MongoDB实现文件上传的步骤
Apr 18 MongoDB
MongoDB安装使用并实现Python操作数据库
浅析MongoDB之安全认证
Jun 26 #MongoDB
SpringBoot整合MongoDB的实现步骤
Jun 23 #MongoDB
详解MongoDB的条件查询和排序
Jun 23 #MongoDB
MongoDB orm框架的注意事项及简单使用
Jun 20 #MongoDB
MongoDB 常用的crud操作语句
Jun 20 #MongoDB
MongoDB数据库常用的10条操作命令
Jun 18 #MongoDB
You might like
php对象和数组相互转换的方法
2015/05/12 PHP
PHP中file_get_contents函数抓取https地址出错的解决方法(两种方法)
2015/09/22 PHP
Track Image Loading效果代码分析
2007/08/13 Javascript
轻轻松松学JS调试(不下载任何工具)
2010/04/14 Javascript
提示$ is not defined错误分析及解决
2013/04/09 Javascript
js模仿jquery的写法示例代码
2013/06/16 Javascript
Seajs的学习笔记
2014/03/04 Javascript
JS实现关键字搜索时的相关下拉字段效果
2014/08/05 Javascript
jQuery实现响应浏览器缩放大小并改变背景颜色
2014/10/31 Javascript
使用AngularJS创建单页应用的编程指引
2015/06/19 Javascript
js获取表格的行数和列数的方法
2015/10/23 Javascript
使用jQuery实现WordPress中的Ctrl+Enter和@评论回复
2016/05/21 Javascript
Node.js 数据加密传输浅析
2016/11/16 Javascript
Javascript之面向对象--方法
2016/12/02 Javascript
Javascript之面向对象--封装
2016/12/02 Javascript
Javascript 高性能之递归,迭代,查表法详解及实例
2017/01/08 Javascript
vue mvvm数据响应实现
2020/11/11 Javascript
聊聊vue 中的v-on参数问题
2021/01/29 Vue.js
[01:02:02]DOTA2上海特级锦标赛A组败者赛 EHOME VS CDEC第二局
2016/02/25 DOTA
Python 调用VC++的动态链接库(DLL)
2008/09/06 Python
详解python 字符串和日期之间转换 StringAndDate
2017/05/04 Python
Python利用itchat库向好友或者公众号发消息的实例
2019/02/21 Python
python opencv实现信用卡的数字识别
2020/01/12 Python
解决pytorch 的state_dict()拷贝问题
2021/03/03 Python
方太官方网上商城:销售方太抽油烟机、燃气灶、消毒柜等
2017/01/17 全球购物
Clarks鞋美国官网:全球领军鞋履品牌
2017/05/13 全球购物
欧洲第一中国智能手机和平板电脑网上商店:CECT-SHOP
2018/01/08 全球购物
Ado与Ado.net的相同与不同
2014/12/08 面试题
市三好学生主要事迹
2014/01/28 职场文书
给老婆的婚前保证书
2014/02/01 职场文书
个人简历自我评价
2014/02/02 职场文书
中标通知书
2015/04/17 职场文书
经营场所使用证明
2015/06/19 职场文书
Django利用AJAX技术实现博文实时搜索
2021/05/06 Python
Python+Appium自动化测试的实战
2021/06/30 Python
使用opencv-python如何打开USB或者笔记本前置摄像头
2022/06/21 Python