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 balancer的使用详解
Apr 30 MongoDB
MongoDB数据库的安装步骤
Jun 18 MongoDB
常用的MongoDB查询语句的示例代码
Jul 25 MongoDB
MongoDB连接数据库并创建数据等使用方法
Nov 27 MongoDB
SpringBoot系列之MongoDB Aggregations用法详解
Feb 12 MongoDB
剖析后OpLog订阅MongoDB的数据变更就没那么难了
Feb 24 MongoDB
SpringBoot 整合mongoDB并自定义连接池的示例代码
Feb 28 MongoDB
MongoDB数据库部署环境准备及使用介绍
Mar 21 MongoDB
Centos系统通过Docker安装并搭建MongoDB数据库
Apr 12 MongoDB
Mongodb 迁移数据块的流程介绍分析
Apr 18 MongoDB
MongoDB数据库之添删改查
Apr 26 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 mb_convert_encoding文字编码的转换函数介绍
2011/11/10 PHP
Yii中创建自己的Widget实例
2016/01/05 PHP
Aster vs Newbee BO5 第一场2.19
2021/03/10 DOTA
javascript下判断一个元素是否存在的代码
2010/03/05 Javascript
jQuery实现简单隔行变色的方法
2016/02/20 Javascript
让你一句话理解闭包(简单易懂)
2016/06/03 Javascript
bootstrap学习笔记之初识bootstrap
2016/06/21 Javascript
D3.js实现直方图的方法详解
2016/09/25 Javascript
解析预加载显示图片艺术
2016/12/05 Javascript
通过AngularJS实现图片上传及缩略图展示示例
2017/01/03 Javascript
微信小程序  http请求封装详解及实例代码
2017/02/15 Javascript
vuejs开发组件分享之H5图片上传、压缩及拍照旋转的问题处理
2017/03/06 Javascript
详解Node.js实现301、302重定向服务
2017/04/07 Javascript
AngularJS中controller控制器继承的使用方法
2017/11/03 Javascript
js中获取URL参数的共用方法getRequest()方法实例详解
2018/10/24 Javascript
vue-router懒加载速度缓慢问题及解决方法
2018/11/25 Javascript
如何使用 vue + d3 画一棵树
2018/12/03 Javascript
NodeJS 文件夹拷贝以及删除功能
2019/09/03 NodeJs
vue改变循环遍历后的数据实例
2019/11/07 Javascript
python使用PyFetion来发送短信的例子
2014/04/22 Python
Python爬虫辅助利器PyQuery模块的安装使用攻略
2016/04/24 Python
解决python3中解压zip文件是文件名乱码的问题
2018/03/22 Python
好的Python培训机构应该具备哪些条件
2018/05/23 Python
使用Python对微信好友进行数据分析
2018/06/27 Python
对python list 遍历删除的正确方法详解
2018/06/29 Python
基于python指定包的安装路径方法
2018/10/27 Python
Windows 安装 Anaconda3+PyCharm的方法步骤
2019/06/13 Python
python障碍式期权定价公式
2019/07/19 Python
Python中输入和输出(打印)数据实例方法
2019/10/13 Python
JupyterNotebook 输出窗口的显示效果调整实现
2020/09/22 Python
python实现学生通讯录管理系统
2021/02/25 Python
乌克兰网上服装店:Bolf.ua
2018/10/30 全球购物
Furla官网:意大利著名的皮革品牌
2019/08/06 全球购物
夫妻双方自愿离婚协议书
2014/10/24 职场文书
停发工资证明范本
2015/06/12 职场文书
文艺委员竞选稿
2015/11/19 职场文书