服务器重启MongoDB无法启动
文章目录
- 服务器重启MongoDB无法启动
- 背景
- 规划
- 实施
- 总结
服务器重启MongoDB无法启动
背景
数据库服务器的CPU接近告警值了,需要添加CPU资源,于是乎就在恰当的时间对服务器进行关机,待添加完资源后开机,这样就完成了CPU资源的添加。
规划
在添加资源之前首先要咨询开发人员,让开发人员确认,什么时候可以对机器进行重启,时间确定了在18点以后就可以对机器进行重启操作。这时候把准备工作做好
- 重启之前确定何时可以重启
- 重启之前把原来的服务关掉
- 重启后查看应用是否启动成功
- 测试MongoDB是否正常使用
方针路线制定未完成,那就开始执行吧,本来添加资源,加上启动应用10分钟内完全能搞定,但一旦出现问题这是完全保证不了时间的。之前升级也是,理想状态下10分钟~1小时能搞定,最后24小时还是搞不定,这是常有的事,这不今天又遇到了。
实施
停止MongoDB服务
systemctl stop mongod
停止服务器
shutdown -h now
添加CPU资源
我们使用的KVM
之后启动服务器
服务器正常启动
检查应用是否启动,就在这时候问题出现了
[root@ZJPMYCDBS01 ~]# systemctl status mongod
● mongod.service - MongoDB Database ServerLoaded: loaded (/usr/lib/systemd/system/mongod.service; enabled; vendor preset: disabled)Active: failed (Result: exit-code) since Wed 2023-08-23 18:06:57 CST; 1min 58s agoDocs: https://docs.mongodb.org/manualProcess: 1800 ExecStart=/usr/bin/mongod $OPTIONS (code=exited, status=14)Process: 1797 ExecStartPre=/usr/bin/chmod 0755 /var/run/mongodb (code=exited, status=0/SUCCESS)Process: 1795 ExecStartPre=/usr/bin/chown mongod:mongod /var/run/mongodb (code=exited, status=0/SUCCESS)Process: 1791 ExecStartPre=/usr/bin/mkdir -p /var/run/mongodb (code=exited, status=0/SUCCESS)Aug 23 18:06:57 ZJPMYCDBS01 systemd[1]: Starting MongoDB Database Server...
Aug 23 18:06:57 ZJPMYCDBS01 mongod[1800]: about to fork child process, waiting until server is ready for connections.
Aug 23 18:06:57 ZJPMYCDBS01 mongod[1800]: forked process: 1803
Aug 23 18:06:57 ZJPMYCDBS01 mongod[1800]: ERROR: child process failed, exited with 14
Aug 23 18:06:57 ZJPMYCDBS01 mongod[1800]: To see additional information in this output, start without the "--fork" option.
Aug 23 18:06:57 ZJPMYCDBS01 systemd[1]: mongod.service: control process exited, code=exited status=14
Aug 23 18:06:57 ZJPMYCDBS01 systemd[1]: Failed to start MongoDB Database Server.
Aug 23 18:06:57 ZJPMYCDBS01 systemd[1]: Unit mongod.service entered failed state.
Aug 23 18:06:57 ZJPMYCDBS01 systemd[1]: mongod.service failed.
[root@ZJPMYCDBS01 ~]#
我是设置了MongoDB开机启动的,所以无需再次启动
再次查看日志
[root@ZJPMYCDBS01 ~]#journalctl -xe
Aug 23 18:05:29 ZJPMYCDBS01 mongod[1710]: To see additional information in this output, start without the "--fork" option.
Aug 23 18:05:29 ZJPMYCDBS01 systemd[1]: mongod.service: control process exited, code=exited status=14
Aug 23 18:05:29 ZJPMYCDBS01 systemd[1]: Failed to start MongoDB Database Server.
-- Subject: Unit mongod.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit mongod.service has failed.
--
-- The result is failed.
Aug 23 18:05:29 ZJPMYCDBS01 systemd[1]: Unit mongod.service entered failed state.
Aug 23 18:05:29 ZJPMYCDBS01 systemd[1]: mongod.service failed.
Aug 23 18:05:29 ZJPMYCDBS01 polkitd[845]: Unregistered Authentication Agent for unix-process:1696:5112 (system bus name :1.20, object path /org/freedesktop/PolicyKit1/Authentication
Aug 23 18:05:57 ZJPMYCDBS01 polkitd[845]: Registered Authentication Agent for unix-process:1722:7930 (system bus name :1.21 [/usr/bin/pkttyagent --notify-fd 5 --fallback], object pa
Aug 23 18:05:57 ZJPMYCDBS01 systemd[1]: Reloading.
Aug 23 18:05:57 ZJPMYCDBS01 systemd[1]: clickhouse-server.service: Supervising process 1339 which is not our child. We'll most likely not notice when it exits.
Aug 23 18:05:57 ZJPMYCDBS01 polkitd[845]: Unregistered Authentication Agent for unix-process:1722:7930 (system bus name :1.21, object path /org/freedesktop/PolicyKit1/Authentication
Aug 23 18:06:01 ZJPMYCDBS01 chronyd[838]: Source 94.237.64.20 replaced with 39.106.54.244
Aug 23 18:06:03 ZJPMYCDBS01 polkitd[845]: Registered Authentication Agent for unix-process:1741:8541 (system bus name :1.22 [/usr/bin/pkttyagent --notify-fd 5 --fallback], object pa
分析以上日志,查看问题,日志中明显的错误信息是code=exited, status=14,查看MongoDB的官网可知以下的内容
| Code | 原因 |
|---|---|
| 0 | MongoDB 应用程序成功退出时返回。 |
| 2 | 指定的选项错误或与其他选项不兼容。 |
| 3 | 当命令行上指定的主机名与主/从模式下的 local.sources 集合中的主机名不匹配时,由 mongod 返回。 |
| 4 | 数据库版本与 mongod(或 mongod.exe)实例支持的版本不同。实例将干净地退出。 |
| 5 | 在初始化过程中遇到问题时,由 mongos 返回。 |
| 12 | 在 Windows 上的 mongod.exe 进程在接收到 Control-C、Close、Break 或 Shutdown 事件时返回。 |
| 14 | MongoDB 应用程序遇到无法恢复的错误、未捕获的异常或未捕获的信号时返回。系统在未执行干净关闭的情况下退出。 |
| 20 | 消息:ERROR: wsastartup failed Windows 上的 MongoDB 应用程序在 WSAStartup 函数出现错误后返回,该函数用于初始化网络子系统。 消息:NT Service Error Windows 上的 MongoDB 应用程序由于安装、启动或删除应用程序的 NT 服务时出现故障而返回。 |
| 48 | 新启动的 mongod 或 mongos 由于错误无法开始侦听传入连接。 |
| 61 | 如果具有受监视目录的文件系统无响应,由存储节点监视器返回。 |
| 62 | 当 --dbpath 中的数据文件与当前运行的 mongod 版本不兼容时,由 mongod 返回。 |
| 100 | 当进程抛出未捕获的异常时,由 mongod 返回。 |
看到以上代码status=14则说明这是异常退出,大概率是有存在锁的,在日志文件中看到了一个lock的文件
但出于对MongoDB的不熟悉,最后网上找到了一个帖子
cd /tmp; ls -l *.sock
chown mongod:mongod mongodb-27017.sock
27017是端口号
mongodb-27017.sock这个文件按理说不会发生权限的变动的,我感觉可能是停止的时候没有完全停止,就急于重启机器,或者是重启的时候有数据写入导致的。
再次启动MongoDB问题解决,不得不说高手在民间,网上很多人不显山不漏水决绝问题棒棒滴,感谢这些网络活雷锋。
总结
在上线过程中,未免是会出现这样那样的问题,遇到问题先看看具体的日志信息,根据日志信息来进行下一步操作,按照日志的关键字去网上查,可能有很多人都会遇到同样的问题,大部分都会解决的。不慌不忙、不急不躁沉着应对。
相关文章:
服务器重启MongoDB无法启动
文章目录 服务器重启MongoDB无法启动背景规划实施 总结 服务器重启MongoDB无法启动 背景 数据库服务器的CPU接近告警值了,需要添加CPU资源,于是乎就在恰当的时间对服务器进行关机,待添加完资源后开机,这样就完成了CPU资源的添加…...
深度刨析数据在内存中的存储
✨博客主页:小钱编程成长记 🎈博客专栏:进阶C语言 深度刨析数据在内存中的存储 1.数据类型介绍1.1 类型的基本归类 2.整形在内存中的存储2.1 原码、反码、补码2.2 大小端介绍 3.浮点型在内存中的存储3.1 一个例子3.2 浮点数的存储规则3.3指数…...
理解FPGA中的亚稳态
一、前言 大家应该经常能听说到亚稳态这个词,亚稳态主要是指触发器的输出在一段时间内不能达到一个确定的状态,过了这段时间触发器的输出随机选择输出0/1,这是我们在设计时需要避免的。本文主要讲述了FPGA中的亚稳态问题,可以帮助…...
Leetcode86. 分隔链表
给你一个链表的头节点 head 和一个特定值 x ,请你对链表进行分隔,使得所有 小于 x 的节点都出现在 大于或等于 x 的节点之前。 你应当 保留 两个分区中每个节点的初始相对位置。 力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台…...
如何处理 Flink 作业中的数据倾斜问题?
分析&回答 什么是数据倾斜? 由于数据分布不均匀,造成数据大量的集中到一点,造成数据热点。 举例:一个 Flink 作业包含 200 个 Task 节点,其中有 199 个节点可以在很短的时间内完成计算。但是有一个节点执行时间…...
cobbler自动化安装CentOS、windows和ubuntu
环境介绍 同时玩cobbler3.3和cobbler2.8.5 cobbler3.3 系统CentOS8.3 VMware虚拟机 桥接到物理网络 IP: 192.168.1.33 cobbler2.8.5 系统CentOS7.9 VMWare虚拟机 桥接到物理网络 IP:192.168.1.33 安装cobbler3.3 yum源修改 cat /etc/yum.repo.d/Cento…...
springcloud3 GateWay章节-Nacos+gateway动态路由负载均衡4
一 工程结构 1.1 工程 1.2 搭建gatewayapi工程 1.pom文件 <dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.13</version><scope>test</scope></dependency><!--gateway--&g…...
RESTful API 面试必问
RESTful API是一种基于 HTTP 协议的 API 设计风格,它提供了一组规范和约束,使得客户端(如 Web 应用程序、移动应用等)和服务端之间的通信更加清晰、简洁和易于理解。 RESTful API 的设计原则 使用 HTTP 协议:RESTful …...
软件机器人助力行政审批局优化网约车业务流程,推动审批业务数字化转型
随着社会的进步和发展,行政审批业务逐渐趋向于智能化和自动化。近日,某市行政审批局在市场准入窗口引入博为小帮软件机器人大幅度提升了网约车办理业务的效率,创新了原有的业务模式。 软件机器人以其自动化、智能化的特性,优化了网…...
飞天使-python的字符串转义字符元组字典等
文章目录 基础语法数据类型python的字符串运算符输入和输出 数据结构列表与元组字典与集合 参考文档 基础语法 数据类型 数值型 ,整数 浮点型 布尔型, 真假, 假范围 字符型 类型转换python的字符串 了解转义字符一些基本的运算 \ 比如一行…...
stm32 uart dma方式接收不定长度字符
一般处理: stm32 uart使用dma接收时,会有自己的数据流中断,数据流中断会调用HAL_UART_RxCpltCallback。但是数据流中断只会在HAL_UART_Receive_DMA函数指定的buffer满时才会触发。 接收不定长度字符,需要和uart的UART_IT_IDLE结…...
SciencePub学术 | Elsevier出版社SCIEEI征稿中
SciencePub学术刊源推荐:Elsevier出版社SCIE&EI征稿中!信息如下,录满为止: 一、期刊概况: 计算机科学类SCI-01 【期刊简介】6.5-7.0,JCR1区,中科院2区; 【检索情况】正刊,SC…...
PHP小白搭建Kafka环境以及初步使用rdkafka
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、安装java(Kafka必须安装java,因为kafka依赖java核心)二、安装以及配置Kafka、zookeeper1.下载Kafka(无需下载…...
【Java Web】敏感词过滤
一、前缀树 假设有敏感词:b,abc,abd,bcd,abcd,efg,hii 那么前缀树可以构造为: 二、敏感词过滤器 package com.nowcoder.community.util;import org.apache.commons.lang3.CharUt…...
stable diffusion实践操作-提示词
本文专门开一节写提示词相关的内容,在看之前,可以同步关注: stable diffusion实践操作 正文 提示词是SD中非常重要,你生成的图片质量,基本就取决于提示词的好坏,提示词分为正向提示词和反向提示词。 模板…...
leetcode8.字符串转整数-Java
题目 请你来实现一个 myAtoi(string s) 函数,使其能将字符串转换成一个 32 位有符号整数(类似 C/C 中的 atoi 函数)。 函数 myAtoi(string s) 的算法如下: 读入字符串并丢弃无用的前导空格 检查下一个字符(假设还未到字…...
从零开始的Hadoop学习(四)| SSH无密登录配置、集群配置
1. SSH 无密登录配置 1.1 配置 ssh (1)基本语法 ssh 另一台电脑的IP地址 (2)ssh 连接时出现 Host key verification failed 的解决方法 [atguiguhadoop102 ~]$ ssh hadoop103(3)回退到 hadoop102 [at…...
微信小程序活动报名管理系统设计与实现
摘 要 随着当下的移动互联网技术的不断发展壮大,现在人们对于手机的应用已经非常的成熟,当下的时代基本上达到了人手一部手机,数字化、信息化已经成为了人们的主流生活。有数据统计,截止到2020年末我国的手机网民人数已经接近10亿…...
用Kubernetes(k8s)的ingress部署https应用
用Kubernetes的ingress部署https应用 环境准备Ingress安装域名证书准备 部署应用通过ingress暴露应用根据ssl证书生成对应的secret创建ingress暴露部署的应用确认自己安装了ingress创建ingress 访问你暴露的应用 环境准备 Ingress安装 我之前有一片文章写的是用ingress暴露应…...
【附安装包】MyEclipse2020安装教程
软件下载 软件:MyEclipse版本:2020语言:简体中文大小:1.61G安装环境:Win11/Win10/Win8/Win7硬件要求:CPU2.5GHz 内存4G(或更高)下载通道①百度网盘丨下载链接:https://pan.baidu.co…...
先被日本汽车打败,再被中国汽车冲击,欧洲车面临崩盘,已累计裁员50万人!
大众汽车在公布2025年的利润腰斩之后,发布了进一步裁员计划,到2030年将削减5万个工作岗位,占它当下员工总人数的比例大约7.5%,由此业界人士统计了近几年来欧洲诸多车企以及汽车供应链企业宣布的裁员人数,发现欧洲汽车行…...
收藏备用|小白/程序员必看!Agentic AI时代,手把手教你构建高效可靠AI Agent
在Agentic AI飞速迭代的当下,AI Agent已成为大模型落地的核心载体,不少小白程序员和入行开发者都想抓住这一风口,但常常陷入“不知从何下手”的困境。本文将从实操角度,详细拆解构建可靠高效AI Agent应用的全流程,核心…...
为什么你的C++量子模拟器总在2^10后崩溃?内存优化、张量压缩与SIMD加速三重方案揭秘
第一章:量子模拟器崩溃现象与2^10内存临界点的本质剖析当量子模拟器在经典硬件上运行含10个量子比特的电路时,常在初始化或状态演化阶段发生静默崩溃——进程异常终止、无堆栈回溯、仅返回 SIGSEGV 或 OOM Killer 日志。这一现象并非随机故障,…...
javaweb农贸市场摊位商户管理信息系统设计与实现
目录同行可拿货,招校园代理 ,本人源头供货商功能模块设计商户服务功能市场运营功能技术实现要点项目技术支持源码获取详细视频演示 :文章底部获取博主联系方式!同行可合作同行可拿货,招校园代理 ,本人源头供货商 功能模块设计 用户管理模块 角色划分&…...
STM32智能灌溉系统设计与实现
1. 项目概述这个智能灌溉控制系统是我去年为一个农业科技公司做的实际项目,当时他们需要在200亩的蓝莓种植基地部署一套自动化灌溉方案。经过三个月的开发和实地测试,最终形成了这套基于STM32的稳定系统。现在把整个设计过程整理出来,希望能给…...
OpenClaw快速接入QQ教程
OpenClaw快速接入QQ教程 OpenClaw是一个强大的开源AI Agent,支持通过多种聊天软件进行交互。下面将详细介绍如何在OpenClaw中接入QQ,实现QQ与AI的对话操作。 前置准备工作 在开始配置之前,请确保完成以下准备工作: QQ账号部署好Op…...
Enhancing Large Language Model Reasoning with Knowledge Graph Paths: A Faithful and Interpretable Ap
1. 为什么大模型需要知识图谱的"导航系统"? 想象一下,你被突然扔进一个陌生城市,手上只有一本过期的旅游指南。这时候如果有个本地人拿着最新地图给你指路,是不是完全不一样?这就是当前大语言模型࿰…...
护网行动入门指南:零基础也能参与,快速积累网安实战经验
护网行动入门指南:如何参与并积累实战经验 护网行动是国内最高规格的网络安全实战演练,旨在检验企业、单位的网络安全防御能力,现已成为网络安全领域的“实战练兵场”。对计算机专业学生而言,参与护网行动不仅能积累宝贵的实战经…...
学Simulink——基于Simulink的基于扰动观测器(DOB)的负载扰动补偿
目录 手把手教你学Simulink——基于Simulink的基于扰动观测器(DOB)的负载扰动补偿 摘要 一、背景与挑战 1.1 负载扰动补偿的痛点与传统控制局限 1.1.1 应用场景与核心指标 1.1.2 传统PI控制的缺陷 1.2 DOB负载扰动补偿的核心优势 1.3 设计目标 二、系…...
震惊!这几款 AI 论文生成器居然能自动匹配真实参考文献,导师都惊呆了!
还在为论文参考文献瞎编、格式错乱、找不到权威文献而熬夜秃头?普通 AI 论文工具动不动就 "文献幻觉",编出一堆查无此篇的假引用,被导师一眼戳穿,直接打回重写!2026 年实测精选,这几款真正能自动…...
