MongoDB服务启动异常 status=14
2021/8/20 13:05:46
本文主要是介绍MongoDB服务启动异常 status=14,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
MongoDB进程 kill -9之后导致服务起不来了
[root@yaong etc]# systemctl status mongod.service ● mongod.service - MongoDB Database Server ...... Process: 9526 ExecStart=/usr/bin/mongod $OPTIONS (code=exited, status=14) ...... Aug 19 10:26:12 yaong systemd[1]: mongod.service: control process exited, code=exited status=14 ......
从网上找了找相关资料,大致说法是:mongo内存管理很特殊,kill -9 很可能影响存库操作
如果不是在写磁盘的时候宕掉,可以通过repair命令进行修复,会丢失最后一次写磁盘的时刻到宕掉时刻期间的数据
如果赶上写磁盘的时候进程宕掉,repair也不能恢复数据,很可能会丢失掉全部数据
尝试进行修复
[root@yaong etc]# /usr/bin/mongod -f /etc/mongod.conf --repair about to fork child process, waiting until server is ready for connections. forked process: 9575 child process started successfully, parent exiting
再次查看服务状态
[root@yaong etc]# systemctl status mongod.service ● mongod.service - MongoDB Database Server Active: failed (Result: exit-code) since Thu 2021-08-19 10:27:05 CST; 6s ago Process: 9618 ExecStart=/usr/bin/mongod $OPTIONS (code=exited, status=1/FAILURE) ...... Aug 19 10:27:05 yaong systemd[1]: mongod.service: control process exited, code=exited status=1 ......
燃鹅还是存在其他问题,鉴于库里没有存啥数据,统统干掉,重头再来
rm -rf /var/lib/mongo/* rm -rf /var/log/mongodb/* cat /var/run/mongodb/mongod.pid rm -rf /data/db/mongod.lock rm -rf /var/lib/mongo/mongod.lock
再次启动服务,服务就起来了
[root@yaong mongodb]# systemctl restart mongod [root@yaong mongodb]# systemctl status mongod.service ● mongod.service - MongoDB Database Server Active: active (running) since Thu 2021-08-19 10:47:14 CST; 3s ago Docs: https://docs.mongodb.org/manual Process: 10836 ExecStart=/usr/bin/mongod $OPTIONS (code=exited, status=0/SUCCESS) ...... Main PID: 10839 (mongod) CGroup: /system.slice/mongod.service └─10839 /usr/bin/mongod -f /etc/mongod.conf [root@yaong etc]# ps -ef | grep mongo mongod 10839 1 0 10:47 ? 00:00:22 /usr/bin/mongod -f /etc/mongod.conf root 15949 1627 0 12:25 pts/0 00:00:00 grep --color=auto mongo
至此,提醒大家停止mongo进程一定要谨慎,推荐三种较稳妥的方式:
交互模式下:
use admin
db.shutdownServer()
mongo命令:
mongod --shutdown
系统命令
kill
除了服务启动模式,还可以命令行后台启动
mongod --dbpath /var/lib/mongo --logpath /var/log/mongodb/mongod.log --fork [root@yaong etc]# ps -ef | grep mongo root 10222 1 5 10:37 ? 00:00:01 mongod --dbpath /var/lib/mongo --logpath /var/log/mongodb/mongod.log --fork root 10281 1627 0 10:38 pts/0 00:00:00 grep --color=auto mongo
与之对应的是停止进程的命令
mongod --dbpath /var/lib/mongo --logpath /var/log/mongodb/mongod.log --shutdown
这篇关于MongoDB服务启动异常 status=14的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-20go-zero 框架的 RPC 服务 启动start和停止 底层是怎么实现的?-icode9专业技术文章分享
- 2024-12-19Go-Zero 框架的 RPC 服务启动和停止的基本机制和过程是怎么实现的?-icode9专业技术文章分享
- 2024-12-18怎么在golang中使用gRPC测试mock数据?-icode9专业技术文章分享
- 2024-12-15掌握PageRank算法核心!你离Google优化高手只差一步!
- 2024-12-15GORM 中的标签 gorm:"index"是什么?-icode9专业技术文章分享
- 2024-12-11怎么在 Go 语言中获取 Open vSwitch (OVS) 的桥接信息(Bridge)?-icode9专业技术文章分享
- 2024-12-11怎么用Go 语言的库来与 Open vSwitch 进行交互?-icode9专业技术文章分享
- 2024-12-11怎么在 go-zero 项目中发送阿里云短信?-icode9专业技术文章分享
- 2024-12-11怎么使用阿里云 Go SDK (alibaba-cloud-sdk-go) 发送短信?-icode9专业技术文章分享
- 2024-12-10搭建个人博客网站之一、使用hugo创建个人博客网站