MongoDB服务无法启动,原因居然是...

前言

某台CentOS服务器上的MongoDB服务突然停止运行,于是登上去排查原因,接下来就是苦逼的爬坑之旅。

爬坑记录

1、重启服务

使用systemctl命令重启服务:

systemctl restart mongod.service

查看系统日志:

journalctl -ex

只是提示启动失败,没有输出任何错误原因:

f19e9cd64cba3697adbf5bd5f2072eba.png

2、查看日志文件

于是准备查看MongoDB的日志,看看是否有错误信息。

但是发现日志文件较大,于是将原始log文件重命名,想在干净的日志中查看:

mv mongod.log mongod.log_old

没想到,这里给自己挖了个大坑!

再次重启服务,还是理所当然的启动失败了。

有条不紊地去查看日志,自以为马上可以找到原因了。结果,发现没有写任何日志,mongod.log文件大小为0

b6244677c696bd1a6fbd4f06a0157b0a.png

换成使用mongod命令运行,效果也是一样:

mongod -f ./mongod.conf

3、曙光乍现

由于没有日志,不知问题在哪,完全没有头绪如何修复。

突然想到,mongod.log文件大小为0!!! 那是不是说明mongod.log文件写不进去啊。

但是该文件是mongod自动创建的,应该有访问权限。

赶快使用mongod命令行参数运行,不写日志文件,直接将日志输出到屏幕:

mongod --dbpath xxx

看到这句输出,一切真相大白:

610cb4671ba6d8002ac90fbda84c5ab4.png

没有磁盘空间了?!

赶快查看磁盘剩余空间:

df -h

确实是0:

7bad1a163a8cbe5f6408f510b6acbf1e.png

1d85570bb82aa9bce47e485062891aff.png

结论

找到问题原因,解决方案当然很简单了。

回顾整个过程,由于MongoDB的数据存储是挂接专门的磁盘,所以系统运行不受影响,关键是系统日志也没任何相关提示,导致开始时忽略了这一问题。

如果你觉得这篇文章对你有所启发,请关注我的个人公众号”My IO“

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/293125.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python绘制饼图双层_有趣!如何用Python-matplotlib绘制双层饼图及环形图?

(1) 饼图(pie),即在一个圆圈内分成几块,显示不同数据系列的占比大小,这也是我们在日常数据的图形展示中最常用的图形之一。 在python中常用matplotlib的pie来绘制,基本命令如下所示&…

C# 获取Excel中的合并单元格

C# 获取Excel中的合并单元格 我们在制作表格时,有时经常需要合并及取消合并一些单元格。在取消合并单元格时需要逐个查找及取消,比较麻烦。这里分享一个简单的方法来识别Excel中的合并单元格,识别这些合并单元格之后对这些单元格进行取消合并…

SQL Server 解读【已分区索引的特殊指导原则】(3) - 非聚集索引分区

一、前言 在MSDN上看到一篇关于SQL Server 表分区的文档:已分区索引的特殊指导原则,如果你对表分区没有实战经验的话是比较难理解文档里面描述的意思。这里我就里面的一些概念进行讲解,方便大家的交流。 SQL Server 解读【已分区索引的特殊指…

Android之SharedPreferences 存储复杂对象

用SharedPreferences存储一些常用的设置信息很方便,但是我们知道SharedPreferences只能存储一些简单的类型 如何用SharedPreferences来存储一些复杂的对象?下面以map为例,看看SharedPreferences 存储复杂对象的方法 如果想用SharedPreference…

.NET 云原生架构师训练营(设计原则设计模式)--学习笔记

▲ 点击上方“DotNet NB”关注公众号回复“1”获取开发者路线图学习分享 丨作者 / 郑 子 铭 这是DotNet NB 公众号的第180篇原创文章目录设计原则设计模式设计原则DRY (Dont repeat yourself 不要重复)KISS (Keep it stupid simple 简单到傻子都能看懂)YAGNI (You Arent Gon…

qt qss设置字体大小_Qt编写自定义控件70-扁平化flatui

一、前言对于现在做前端开发人员来说,FlatUI肯定不陌生,最近几年扁平化的设计越来越流行,大概由于现在PC端和移动端的设备的分辨率越来越高,扁平化反而看起来更让人愉悦,而通过渐变色产生的质感色彩反而没有扁平化来得…

机器学习之决策树熵信息增量求解算法实现

此文不对理论做相关阐述,仅涉及代码实现: 1.熵计算公式: P为正例,Q为反例 Entropy(S) -PLog2(P) - QLog2(Q); 2.信息增量计算: Gain(S,Sv) Entropy(S) - (|Sv|/|S|)ΣEntropy(Sv); 举例: 转化数据输入: 5 14Outlook Sunny Sunny Overcast Rain Rain Rain …

centos6.4下安装jdk

centos安装好后一般默认安装好了openJDK,且在6.4版本下是jdk7,我们要将其卸载在安装jdk6 1.卸载默认安装好的jdk,按下图所示的命令行命令卸载jdk 2.将jdk安装包上传到/usr/local目录下(将jdk其安装到这个目录下,可用winSCP工具上传…

实践剖析.NET Core如何支持Cookie滑动过期和JWT混合认证、授权

【导读】为防止JWT Token被窃取,我们将Token置于Cookie中,但若与第三方对接,调用我方接口进行认证、授权此时仍需将Token置于请求头,通过实践并联系理论,我们继续开始整活首先我们实现Cookie认证,然后再次引…

简单音乐播放实例的实现,Android Service AIDL 远程调用服务

2019独角兽企业重金招聘Python工程师标准>>> Android Service是分为两种: 本地服务(Local Service): 同一个apk内被调用 远程服务(Remote Service):被另一个apk调用 远程服务需要借…

C# 使用int.TryParse,Convert.ToInt32,(int)将浮点类型转换整数时的区别

int.TryParse,Convert.ToInt32,(int) 这几种类型在将浮点类型转换整数时是有差别Convert.ToInt32则会进行四舍五入int.TryParse只能转换整数,即浮点类型全部会返回0(int)不会进行四舍五入,只取整数部分,小数点部分完全舍弃using System;public class DoubleToInt{public …

每个女孩子起床后做的第一件事......

1 假如你暴富了(素材来源网络,侵删)▼2 当客服到底有多难?(素材来源网络,侵删)▼3 挺好的(素材来源网络,侵删)▼4 每个女孩子起床后做的第一件事&#xff…

国产知名老牌 PDF 工具正式开源

文 | Travis出品 | OSC开源社区(ID:oschina2013)「PDF 补丁丁」是开发者 wmjordan 所开发的一款适用于 Windows 系统的多功能 PDF 文档工具箱,开发者最早于 2009 年开始了该程序的开发,如今已有十二年历史,…

.net Repeater知识知多少

&#xff08;一&#xff09;.net中使用Repeater绑定数据&#xff0c;并使用repeater循环出的两个值&#xff0c;赋给repeater中的div的value值。详细如下&#xff1a; 前端.net代码&#xff1a; <div class"wytz_xmlb_nr clear"><asp:Repeater ID"RpBi…

目瞪口呆!137亿年的宇宙演化,竟然如此震撼!简直颠覆想象....

▲ 点击查看1968年圣诞节&#xff0c;阿波罗8号在环月球轨道上拍摄了一张照片。这是地球拥有的第一张自拍。也让人类第一次感受到&#xff0c;原来在广阔无垠的宇宙中&#xff0c;地球不过是一个美丽而又珍贵的孤岛。1990年&#xff0c;旅行者1号完成了所有的观测使命&#xff…

Martin Fowler:数字化时代,远程与本地协同工作孰优孰劣?| IDCF

作者&#xff1a;Martin Fowler译者&#xff1a;冬哥原文&#xff1a;https://martinfowler.com/articles/remote-or-co-located.html远程工作与同地工作之间不是简单的二分法&#xff0c;相反&#xff0c;团队有多种分布模式&#xff0c;每种模式都有不同的权衡和适合的有效技…

android:自己实现能播放网络视频url的播放器

2019独角兽企业重金招聘Python工程师标准>>> android原生自带的播放器一般只能播放本地视频&#xff0c;而没有播放url的功能。不过android系统中有一个VideoView的控件可以实现这一功能。 简单实现如下&#xff1a; public class MyVideoPlay extends Activity i…

iOS调用系统相册、相机 显示中文标题

2019独角兽企业重金招聘Python工程师标准>>> 最终在info.plist设置解决问题 发现在项目的info.plist里面添加Localized resources can be mixed 设置为&#xff1a; YES&#xff08;表示是否允许应用程序获取框架库内语言&#xff09;即可解决这个问题。 转载于:htt…