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使用profile分析慢查询的步骤
Apr 30 MongoDB
MongoDB数据库常用的10条操作命令
Jun 18 MongoDB
详解MongoDB的条件查询和排序
Jun 23 MongoDB
浅析MongoDB之安全认证
Jun 26 MongoDB
mongodb数据库迁移变更的解决方案
Sep 04 MongoDB
MongoDB使用场景总结
Feb 24 MongoDB
SpringBoot 整合mongoDB并自定义连接池的示例代码
Feb 28 MongoDB
MongoDB误操作后使用oplog恢复数据
Apr 11 MongoDB
Centos系统通过Docker安装并搭建MongoDB数据库
Apr 12 MongoDB
SpringBoot集成MongoDB实现文件上传的步骤
Apr 18 MongoDB
NoSQL优缺点与MongoDB数据库简介
Jun 05 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 获取MSN好友列表的代码(2009-05-14测试通过)
2009/09/09 PHP
PHP文件打开、关闭、写入的判断与执行代码
2011/05/24 PHP
几种有用的变型 PHP中循环语句的用法介绍
2012/01/30 PHP
php获得网站访问统计信息类Compete API用法实例
2015/04/02 PHP
mac os快速切换多个PHP版本的方法
2017/03/07 PHP
PHP chr()函数讲解
2019/02/11 PHP
tp5.0框架隐藏index.php入口文件及模块和控制器的方法分析
2020/02/11 PHP
javascript编程起步(第五课)
2007/01/10 Javascript
jQuery EasyUI API 中文文档 - EasyLoader 加载器
2011/09/29 Javascript
jQuery中:submit选择器用法实例
2015/01/03 Javascript
jQuery拖拽插件gridster使用指南
2015/04/21 Javascript
javascript实现点击后变换按钮显示文字的方法
2015/05/13 Javascript
JavaScript中字面量与函数的基本使用知识
2015/10/20 Javascript
javascript 常用验证函数总结
2016/06/28 Javascript
js canvas仿支付宝芝麻信用分仪表盘
2016/11/16 Javascript
jquery操作select取值赋值与设置选中实例
2017/02/28 Javascript
Canvas放置反弹效果随机图形(实例)
2017/08/17 Javascript
AngularJS集合数据遍历显示的实例
2017/12/27 Javascript
JS使用遮罩实现点击某区域以外时弹窗的弹出与关闭功能示例
2018/07/31 Javascript
在layui框架中select下拉框监听更改事件的例子
2019/09/20 Javascript
Vue 401配合Vuex防止多次弹框的案例
2020/11/11 Javascript
js调用网络摄像头的方法
2020/12/05 Javascript
Element-ui 自带的两种远程搜索(模糊查询)用法讲解
2021/01/29 Javascript
[45:46]2014 DOTA2国际邀请赛中国区预选赛5.21 HGT VS DT
2014/05/23 DOTA
Python元字符的用法实例解析
2018/01/17 Python
对python多线程中Lock()与RLock()锁详解
2019/01/11 Python
Python 判断图像是否读取成功的方法
2019/01/26 Python
基于python调用psutil模块过程解析
2019/12/20 Python
马来西亚网上美容店:Hermo.my
2017/11/25 全球购物
JD Sports马来西亚:英国领先的运动鞋和运动服饰零售商
2018/03/13 全球购物
DNA测试:Orig3n
2019/03/01 全球购物
保护母亲河倡议书
2014/04/14 职场文书
教师一岗双责责任书
2014/04/16 职场文书
竞选学生会主席演讲稿
2014/04/24 职场文书
迟到检讨书范文
2015/01/27 职场文书
教你使用VS Code的MySQL扩展管理数据库的方法
2022/01/22 MySQL