sql >> Database teknologi >  >> NoSQL >> MongoDB

MongoDB starter ikke efter servernedbrud

Logfilen fortæller dig, at du har en "gammel låsefil" . MongoDB opbevarer en låsefil, mens den kører. Den opretter denne fil, når den startes, og sletter den, når den er stoppet. Når computeren går ned (eller MongoDB går ned, f.eks. via kill ), denne fil slettes ikke, og databasen starter derfor ikke. Eksistensen af ​​denne fil indikerer en uren nedlukning af MongoDB.

To ting kan gøres:

  1. Hvis dette er en udviklingsmaskine, og du ikke har brugt din database (og heller ikke dine programmer), kan du fjerne filen manuelt. For MongoDB 2.2.2, der kører på Ubuntu 12.10, er det i /var/lib/mongodb/mongod.lock . For andre versioner kan filen være i en anden sti, eller den kan hedde mongo.lock .

  2. Den sikrere rute er at følge MongoDBs holdbarheds- og reparationsvejledning. Kort sagt, for en maskine med ovenstående konfiguration skal du udføre følgende kommandoer:

    sudo -u mongodb mongod --repair --dbpath /var/lib/mongodb/
    sudo service mongod start
    


  1. Opdater array med flere betingelser i mongodb

  2. Hvordan konverterer man en pymongo.cursor.Cursor til en diktat?

  3. MongoDB-forespørgsel for kun at returnere indlejret dokument

  4. Sådan visualiseres Resque-brug med Node.js, WebSockets og Redis