У меня есть установка MongoDB 2.0.4 на Ubuntu 12.10. Недавно у меня были некоторые проблемы с подключением к базе данных извне, и я обнаружил, что что-то мешало правильному запуску MongoDB. Как предложено в нескольких источниках (см. StackOverflow), я удалил /var/lib/mongodb/mongodb.lock
и запустил mongod --repair
. Это не решило проблему, MongoDB не запускался и продолжал создавать блокирующие файлы, которые он впоследствии не позаботился об удалении. Просматривая журналы, я понял, что у него нет доступа к какой-либо папке с именем $tmpSomething
, поэтому (так как название предполагает временную папку), я удалил ее, а потом все заработало ... за исключением того факта, что у меня есть только одна из моих предыдущих баз данных в поле зрения, в то время как другие все еще там, потому что моя /var/lib/mongodb/
папка все еще полна.ns .0 .1 .n
файлы, которые много весят. Есть ли способ восстановить их в базу данных? (Я пытался с mongorestore, но, как я и ожидал, он не обрабатывает эти файлы).
Благодарность
mongod --dbpath ./
а затем продолжить работу с mongodump без--dbpath
mongod --dbpath ./
не предоставляете базу данных в.ns .0
файлах, возможно, механизм хранения по умолчанию использует новый механизм WiredTiger вместо старого модуля MMapV1. Попробуйтеmongod --storageEngine mmapv1 --dbpath ./
вместо этого подключиться, используя старый движок.