MongoDB学习系列(3)--解决MongoDB Unexpected Shutdown问题

晚上准备继续学习PHP+MongoDB,点击Run_MongoDB_Service.bat文件,这个文件是我写的bat文件,就是快速启动MongoDB。但是命令行一闪而过,我很奇怪。昨天晚上写代码还是正常的,怎么今天用就不正常了。我只好手动敲一遍命令。界面好像和之前不一样,个人觉得应该是出错了。错误界面如下:

image

主要信息有2个:

1.Unclean shutdown detected.

2.可以恢复的参考:http://docs.mongodb.org/manual/tutorial/recover-data-following-unexpected-shutdown/

Chrome打开网页,对MongoDB进行修复了。当然这个问题引起应该是MongoDB还正在运行,然后我就关机了。我关机时,即使电脑提醒我有程序还在运行,我基本都是点继续。估计这个Unexpected Shutdown是这个引起。参考给出,如果你开启了MongoDB Journaling或者是replica set(复制集),就应该使用Replica Set Syncing(复制集同步功能)。但是我在使用过程中未开启Journaling,也没有配置replica set。

刚开始觉得,不就是文件有损坏吗?直接删除data目录下的所有文件。我后来想《MongoDB实战》书上不就说了,MongoDB有着极强故障迁移和恢复机制,不如直接动手来恢复直接的数据。步骤给出的很详细,不过有一点要说明。在步骤中,让我们新建一个data0的文件,我以为恢复好之后,新文件会存在data0文件夹中,然后我按照步骤修复完成之后,我发现data0文件夹中为空,我一度以为我修复失败了。后来我按照网页步骤,成功的恢复了数据库。

特别提示:第二步才能删除mongod.lock文件。

image

高祥同学对文档进行了一下中文翻译。网页本身是在Linux上进行的,但是windows系统下改变一下目录就ok。好了,解决好这个问题,继续学习MongoDB。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值