返回顶部
首页 > 资讯 > 数据库 >mongodb非正常关闭无法启动
  • 617
分享到

mongodb非正常关闭无法启动

2024-04-02 19:04:59 617人浏览 薄情痞子
摘要

刚刚接触mongoDB,遇到了个小问题,网上查到的资料好像都不是很全,总结记录下,希望对大家有帮助。一、问题描述在重新配置monGodb的主从时,非正常关闭了数据库【kill mongod进程】,结果在重新

刚刚接触mongoDB,遇到了个小问题,网上查到的资料好像都不是很全,总结记录下,希望对大家有帮助。

一、问题描述

在重新配置monGodb的主从时,非正常关闭了数据库【kill mongod进程】,结果在重新启动时抛出错误如下

PS:正常应该是: mongod -f /mvnobss/users/mgousr01/mongodb/conf/master.conf --shutdown

mgousr01@test:/mvnobss/users/mgousr01/mongodb/bin>./start_mongodb.sh 
about to fork child process, waiting until server is ready for connections.
forked process: 30717
ERROR: child process failed, exited with error number 100

二、问题解决

查看日志

2017-05-11T16:01:42.370+0800 I CONTROL  ***** SERVER RESTARTED *****
2017-05-11T16:01:42.404+0800 I JOURNAL  [initandlisten] journal dir=/mvnobss/users/mgousr01/mongodb/dbdata/rs0/journal
2017-05-11T16:01:42.404+0800 I JOURNAL  [initandlisten] recover begin
2017-05-11T16:01:42.404+0800 I JOURNAL  [initandlisten] recover lsn: 75715637
2017-05-11T16:01:42.404+0800 I JOURNAL  [initandlisten] recover /mvnobss/users/mgousr01/mongodb/dbdata/rs0/journal/j._23
2017-05-11T16:01:42.408+0800 I JOURNAL  [initandlisten] recover skipping application of section seq:59812763 < lsn:75715637
2017-05-11T16:01:43.187+0800 I JOURNAL  [initandlisten] recover skipping application of section seq:59872073 < lsn:75715637
2017-05-11T16:01:43.517+0800 I JOURNAL  [initandlisten] recover /mvnobss/users/mgousr01/mongodb/dbdata/rs0/journal/j._24
2017-05-11T16:01:44.633+0800 I JOURNAL  [initandlisten] recover /mvnobss/users/mgousr01/mongodb/dbdata/rs0/journal/j._25
2017-05-11T16:01:45.762+0800 I JOURNAL  [initandlisten] recover /mvnobss/users/mgousr01/mongodb/dbdata/rs0/journal/j._26
2017-05-11T16:01:45.765+0800 I JOURNAL  [initandlisten] recover skipping application of section seq:60050033 < lsn:75715637
2017-05-11T16:01:45.766+0800 F JOURNAL  [initandlisten] dbexception during recovery: 15923 couldn't get file length when opening mapping /mvnobss/users/mgousr01/mongodb/dbdata/rs0/lxvomgodb1/lxvomgodb1.19 boost::filesystem::file_size: No such file or directory: "/mvnobss/users/mgousr01/mongodb/dbdata/rs0/lxvomgodb1/lxvomgodb1.19"
2017-05-11T16:01:45.766+0800 I STORAGE  [initandlisten] exception in initAndListen: 15923 couldn't get file length when opening mapping /mvnobss/users/mgousr01/mongodb/dbdata/rs0/lxvomgodb1/lxvomgodb1.19 boost::filesystem::file_size: No such file or directory: "/mvnobss/users/mgousr01/mongodb/dbdata/rs0/lxvomgodb1/lxvomgodb1.19", terminating
2017-05-11T16:01:45.766+0800 I CONTROL  [initandlisten] now exiting
2017-05-11T16:01:45.766+0800 I NETWORK  [initandlisten] shutdown: going to close listening Sockets...
2017-05-11T16:01:45.767+0800 I NETWORK  [initandlisten] shutdown: going to flush diaglog...
2017-05-11T16:01:45.767+0800 I NETWORK  [initandlisten] shutdown: going to close sockets...
2017-05-11T16:01:45.767+0800 I STORAGE  [initandlisten] shutdown: waiting for fs preallocator...
2017-05-11T16:01:45.767+0800 I STORAGE  [initandlisten] shutdown: final commit...
2017-05-11T16:01:45.767+0800 I STORAGE  [initandlisten] shutdown: closing all files...
2017-05-11T16:01:45.767+0800 I STORAGE  [initandlisten] closeAllFiles() finished
2017-05-11T16:01:45.767+0800 I CONTROL  [initandlisten] dbexit:  rc: 100

日志说找不到/mvnobss/users/mgousr01/mongodb/dbdata/rs0/lxvomgodb1/lxvomgodb1.19文件,这个是正常的,因为我停库之前备份数据库后删除了数据库,常规情况是可以启动起来的。

网上百度说是需要删除非正常关闭后产生的mongod.lock文件再去重新启动,好,删除来一遍:

mgousr01@test:/mvnobss/users/mgousr01/mongodb/dbdata/rs0>ll
total 20
drwxrwxr-x 3 mgousr01 mongodb 4096 2015-10-10 17:46 admin
drwxrwxr-x 2 mgousr01 mongodb 4096 2017-05-11 11:12 journal
drwxrwxr-x 3 mgousr01 mongodb 4096 2015-10-10 17:43 local
drwxrwxr-x 3 mgousr01 mongodb 4096 2017-05-11 15:47 lxvomgodb1
-rwxrwxr-x 1 mgousr01 mongodb    0 2017-05-11 16:02 mongod.lock
-rw-rw-r-- 1 mgousr01 mongodb   69 2015-10-10 17:09 storage.bson
mgousr01@test:/mvnobss/users/mgousr01/mongodb/dbdata/rs0>
mgousr01@test:/mvnobss/users/mgousr01/mongodb/dbdata/rs0>
mgousr01@test:/mvnobss/users/mgousr01/mongodb/dbdata/rs0>rm -rf mongod.lock

重新启动依旧报错,并且又生成了mongod.lock文件:

mgousr01@test:/mvnobss/users/mgousr01/mongodb/bin>./start_mongodb.sh 
about to fork child process, waiting until server is ready for connections.
forked process: 30717
ERROR: child process failed, exited with error number 100
mgousr01@test:/mvnobss/users/mgousr01/mongodb/dbdata/rs0>ll
total 20
drwxrwxr-x 3 mgousr01 mongodb 4096 2015-10-10 17:46 admin
drwxrwxr-x 2 mgousr01 mongodb 4096 2017-05-11 11:12 journal
drwxrwxr-x 3 mgousr01 mongodb 4096 2015-10-10 17:43 local
drwxrwxr-x 3 mgousr01 mongodb 4096 2017-05-11 15:47 lxvomgodb1
-rwxrwxr-x 1 mgousr01 mongodb    0 2017-05-11 16:15 mongod.lock

试过了很多遍还是不行,继续看日志:

2017-05-11T16:15:42.379+0800 I CONTROL  ***** SERVER RESTARTED *****
2017-05-11T16:15:42.413+0800 I STORAGE  [initandlisten] **************
2017-05-11T16:15:42.413+0800 I STORAGE  [initandlisten] Error: journal files are present in journal directory, yet starting without journaling enabled.
2017-05-11T16:15:42.413+0800 I STORAGE  [initandlisten] It is recommended that you start with journaling enabled so that recovery may occur.
2017-05-11T16:15:42.413+0800 I STORAGE  [initandlisten] **************
2017-05-11T16:15:42.413+0800 I STORAGE  [initandlisten] exception in initAndListen: 13597 can't start without --journal enabled when journal/ files are present, terminating
2017-05-11T16:15:42.413+0800 I CONTROL  [initandlisten] dbexit:  rc: 100

journal文件目前存在在journal目录下,并且本次启动过程没有启动journaling,由于启动数据库时伴随启动了journaling所以才会抛出错误。

于是进到journal目录下,将非正常关闭时间点的journal文件删除:

mgousr01@test:/mvnobss/users/mgousr01/mongodb/dbdata/rs0/journal>ls -lrt
total 3179664
-rw------- 1 mgousr01 mongodb 1076690944 2017-05-11 11:11 j._23
-rw------- 1 mgousr01 mongodb 1081876480 2017-05-11 11:11 j._24
-rw------- 1 mgousr01 mongodb 1093656576 2017-05-11 11:12 j._25
-rw------- 1 mgousr01 mongodb    3735552 2017-05-11 15:38 j._26
-rw------- 1 mgousr01 mongodb         88 2017-05-11 15:38 lsn
mgousr01@test:/mvnobss/users/mgousr01/mongodb/dbdata/rs0/journal>rm -rf j._26

启动成功:

mgousr01@test:/mvnobss/users/mgousr01/mongodb/bin>ll
total 4
-rwxrwxr-x 1 mgousr01 mongodb 60 2015-08-11 17:44 start_mongodb.sh
mgousr01@test:/mvnobss/users/mgousr01/mongodb/bin>./start_mongodb.sh 
about to fork child process, waiting until server is ready for connections.
forked process: 30927
child process started successfully, parent exiting

由于不是很懂这个文件目录的作用,网上查阅各种资料才知道,这个journal就是oracle 的redo log,Mysql的binlog,用于故障恢复的。

具体是怎样的运行机制还需要进一步研究。

我上面的环境是测试环境,不怕丢数据所以删除无所谓,生产环境应该要慎重。

【个人觉得,应该是可以在配置文件中指定disable journaling,然后去启动mongodb,启动成功后再enable重启数据库,还未尝试~】


您可能感兴趣的文档:

--结束END--

本文标题: mongodb非正常关闭无法启动

本文链接: https://lsjlt.com/news/44961.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • mongodb非正常关闭无法启动
    刚刚接触mongodb,遇到了个小问题,网上查到的资料好像都不是很全,总结记录下,希望对大家有帮助。一、问题描述在重新配置mongodb的主从时,非正常关闭了数据库【kill mongod进程】,结果在重新...
    99+
    2024-04-02
  • 电脑影子系统非正常关机无法启动怎么解决
    这篇文章主要介绍了电脑影子系统非正常关机无法启动怎么解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇电脑影子系统非正常关机无法启动怎么解决文章都会有所收获,下面我们一起来看看吧。解决方法方法一:将电脑中安装的...
    99+
    2023-07-01
  • 新增ActiveMQ无法正常启动
    问题描述:新解压activeMQ,发现无法启动,报错 解决办法:01.新增java_home    “变量名”:Java_Home    “变量值...
    99+
    2024-04-02
  • hbase无法正常启动问题
    在完全分布式环境下,hbase启动时无法正常启动,logs日志中抛出异常信息org.apache.hadoop.hbase.ClockOutOfSyncException此问题是由于master和Regio...
    99+
    2024-04-02
  • 无法正常启动0xc0000005
    错误代码0xc0000005表示访问违例,通常发生在应用程序试图读取或写入无效的内存位置时。这个问题可能由以下几个原因引起...
    99+
    2023-09-15
    启动
  • oracle 10G rac启动与关闭正常顺序
    [root@node-rac1 ~]# su - oracle关闭node-rac1[oracle@node-rac1 ~]$ cd /app/crs/product/10201/crs/bin/[orac...
    99+
    2024-04-02
  • Tomcat无法正常启动的问题
    首先我的问题是Tomcat无法正常启动,bin目录下的startup.bat也出现闪退的情况。 解决步骤: 先检查jdk的环境变量配置:             (1)  右击“电脑”——>“属性”——>“高级系统设置”——>点击“环境变...
    99+
    2023-10-09
    tomcat java servlet
  • Android正在启动如何关闭
    要关闭正在启动的Android设备,您可以使用以下方法之一:1. 通过长按电源键:长按设备的电源键,直到出现关机或重启选项。然后选择关机选项,设备将关闭。2. 通过快捷菜单关闭:从设备屏幕的顶部向下滑动,以打开快捷菜单。在快捷菜单中,您...
    99+
    2023-08-09
    Android
  • python无法正常启动如何解决
    如果Python无法正常启动,可能是由于以下原因导致的:1. Python环境未正确安装:请确保已正确安装Python,并且环境变量...
    99+
    2023-09-16
    python
  • Win10无法正常启动如何解决
    当Windows 10无法正常启动时,可以尝试以下解决方法:1. 尝试重启电脑:有时候只需要简单地重启电脑就可以解决问题。2. 进入...
    99+
    2023-08-23
    Win10
  • 正确主动关闭websocket,异常关闭处理
    CloseEvent.code 开发大型项目时需要正确主动关闭websocket,同时根据异常关闭正确的执行重连 0-999 暂未使用 关闭状态码简称原因1000正常关闭连接成功地完成了创建它的目的...
    99+
    2023-09-04
    websocket 服务器 网络协议
  • 电脑不能正常启动windows怎么办,电脑系统无法正常启动
    如果电脑无法正常启动Windows,可以尝试以下方法:1. 重启电脑:按下电源按钮长按5秒钟,等待电脑完全关闭后再重新启动。2. 检...
    99+
    2023-09-09
    电脑
  • 【MongoDB学习笔记10】MongoDB的启动和关闭
    一、MongoDB启动MongoDB用mongod命令来启动,不建议用service mongod start或者chkconfig mongod on来启动Mong...
    99+
    2024-04-02
  • docker start启动容器不报错,却无法正常启动
    问题描述:想启动 1e 这个容器 start后,没有报错,但是就是启动不了… 原因 查看一下日志 docker logs 1e1b85322dfa 好家伙,虽然它运行命令的时候不报错,但是它运行...
    99+
    2023-10-12
    mysql 数据库 java
  • 解决PHP无法正常启动的技巧
    解决PHP无法正常启动的技巧,需要具体代码示例 PHP作为一种流行的服务器端脚本语言,在Web开发中被广泛应用。然而,有时候我们会遇到PHP无法正常启动的情况,这可能导致网站无法正常运...
    99+
    2024-03-13
    技巧 修复 php启动
  • 应用程序无法正常启动(0XC0150002)
    这个错误通常是由于缺少或损坏的运行库文件引起的。解决该问题的方法如下:1. 重新安装应用程序:如果只有特定的应用程序无法启动,可以尝...
    99+
    2023-09-26
    应用程序
  • win10电脑无法正常启动怎么处理
    这篇文章主要介绍了win10电脑无法正常启动怎么处理的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇win10电脑无法正常启动怎么处理文章都会有所收获,下面我们一起来看看吧。处理方法:一、电脑能通过自检,听到“嘀...
    99+
    2023-06-28
  • 电脑word无法正常启动如何修复
    如果电脑上的Word无法正常启动,可以尝试以下几种方法修复:1. 重启电脑:有时候Word无法启动可能只是临时性的问题,通过重启电脑...
    99+
    2023-09-12
    电脑 word
  • windows 0x00007b无法正常启动怎么解决
    今天小编给大家分享一下windows 0x00007b无法正常启动怎么解决的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一...
    99+
    2023-07-01
  • win11无法正常启动电脑如何解决
    这篇文章主要介绍了win11无法正常启动电脑如何解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇win11无法正常启动电脑如何解决文章都会有所收获,下面我们一起来看看吧。方法一:如果我们的电脑无法正常启动,很...
    99+
    2023-07-01
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作