• MongoDB-启动的时候出现了问题


    之前MongoDB启动的时候是正常的,不知道后来启动报错了,就把粘贴出来查询了。最后才知道是由于自己不正常的关闭导致的这个情况。

    --摘录:MongoDB非正常关闭后修复记录

      mongod没有后台执行,在终端连接非正常断开后,再次执行mongod报错,如下所示:

    2015-03-09T20:39:20.172+0800 
    2015-03-09T20:39:20.172+0800 warning: 32-bit servers don't have journaling enabled by default. Please use --journal if you want durability.
    2015-03-09T20:39:20.172+0800 
    about to fork child process, waiting until server is ready for connections.
    forked process: 14229
    ERROR: child process failed, exited with error number 100
    

    修复方法:

    这算是一个Mongod 启动的一个常见错误,非法关闭的时候,lock 文件没有干掉,第二次启动的时候检查到有lock 文件的时候,就报这个错误了。

    解决方法:进入 mongod 上一次启动的时候指定的 data 目录  --dbpath=/data/mongodb

    删除掉该文件:

    rm /data/mongodb/mongo.lock --linux
    
    del /data/mongodb/mongo.lock --windows

    再执行:

     ./mongod  --repair
    

    启动:

    /usr/local/mongodb$ /usr/local/mongodb/mongod -dbpath=/data/mongodb --fork --port 27017 --logpath=/usr/local/mongodb/log/work.log --logappend --auth

    OK,问题解决。

    正确关闭mongod 的方法:进入mongo shell

    use admin
    db.shutdownServer()

    也可以按照文档粗暴的杀掉它,它内部应该有KILL信号处理程序。

    killall mongod

    请不要 kill -9 ,会造成文件数据混乱丢失 repair 也无力回天。

    ctrl+c 可以退出mongo的界面 或是ext

  • 相关阅读:
    spring与springmvc父子容器
    spring容器BeanFactory简单例子
    spring整体架构
    css中".",",",“~”和“>”符号的意义
    CSS中的块级元素与行级元素
    java反射和动态代理
    thymeleaf的fragment例子
    编写一个简单的 JDBC 程序
    http://localhost/ 或 http://127.0.0.1/ 报错:HTTP 404 的解决办法
    教你如何清除 MyEclipse/Eclipse 中 Web Browser 和 Switch Workspace 的历史记录
  • 原文地址:https://www.cnblogs.com/timelesszhuang/p/4324461.html
Copyright © 2020-2023  润新知