MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

MongoDB não inicia após falha do servidor


O arquivo de log está informando que você tem um "arquivo de bloqueio antigo" . O MongoDB mantém um arquivo de bloqueio enquanto está em execução. Ele cria esse arquivo quando é iniciado e o exclui quando é interrompido. Quando o computador trava (ou o MongoDB trava, por exemplo, via kill ), esse arquivo não é excluído e, portanto, o banco de dados não inicia. A existência deste arquivo indica desligamento não limpo do MongoDB.

Duas coisas podem ser feitas:

  1. Se esta for uma máquina de desenvolvimento e você não estiver usando seu banco de dados (nem seus programas), você pode remover o arquivo manualmente. Para MongoDB 2.2.2 rodando no Ubuntu 12.10, está em /var/lib/mongodb/mongod.lock . Para outras versões, o arquivo pode estar em um caminho diferente ou pode ser nomeado mongo.lock .

  2. A rota mais segura é seguir o guia de durabilidade e reparo do MongoDB. Em resumo, para uma máquina com a configuração acima, você deve executar os seguintes comandos:
    sudo -u mongodb mongod --repair --dbpath /var/lib/mongodb/
    sudo service mongod start