Обнаружен нечистый выключатель mongod
Я пытаюсь начать mongod.exe
но у меня есть, и я получаю следующую ошибку:
C:\MongoDB\Server\30\bin>mongod.exe
2015-12-16T19:12:17.108+0100 I CONTROL 2015-12-16T19:12:17.110+0100 W CONTROL 32-bit servers don't have journaling enabled by default.
Please use --journal if you want durability.
2015-12-16T19:12:17.110+0100 I CONTROL
2015-12-16T19:12:17.120+0100 I CONTROL Hotfix KB2731284 or later update is not installed, will zero-out data files
2015-12-16T19:12:17.132+0100 I STORAGE [initandlisten] **************
2015-12-16T19:12:17.132+0100 I STORAGE [initandlisten] Error: journal files are present in journal directory, yet starting without journaling enabled.
2015-12-16T19:12:17.133+0100 I STORAGE [initandlisten] It is recommended that you start with journaling enabled so that recovery may occur.
2015-12-16T19:12:17.133+0100 I STORAGE [initandlisten] **************
2015-12-16T19:12:17.135+0100 I STORAGE [initandlisten] exception in initAndListen: 13597 can't start without --journal enabled when journal/ files are present, terminating
2015-12-16T19:12:17.135+0100 I CONTROL [initandlisten] dbexit: rc: 100
Я также пытался запустить его с --repair
но тогда я получаю ту же ошибку.
Наконец, я попытался удалить mongod.lock
файл, но я все еще получаю ошибку.
Как мне исправить нечистое отключение?
4 ответа
Решение этой проблемы mongod --repair
, Эта команда автоматически отключает все процессы и устраняет проблемы Mongodb. Вы можете найти более подробную информацию в официальной документации.
Уважаемое сообщество Stack Overflow, пожалуйста, попробуйте ответить на заданный вопрос. Не будь слишком умным. Пожалуйста.
Хорошо, чтобы получить некоторую путаницу прямо здесь. Журнальные файлы не для того, чтобы раздражать вас. Они содержат данные, еще не примененные к файлам данных, но уже полученные и подтвержденные сервером. mongod
Процесс завершил запрос после применения данных к журналу, но до их применения к файлам данных. Это поведение настраивается выбранной записью.
Итог: были сделаны специальные измерения, чтобы сделать данные в журнале долговечными, вы не должны игнорировать это.
Таким образом, вы должны создать файл конфигурации, содержащий это (среди прочего, если он уже существует):
storage:
journal:
enabled: true
Пожалуйста, следуйте документации по запуску MongoDB на Windows к письму. Настройте файл конфигурации с параметрами в соответствии с вашими потребностями.
Если вы абсолютно уверены, что вам не нужно вести журнал, вы можете запустить mongodb с помощью --journal
параметр командной строки только один раз, выключите экземпляр после успешного применения журнала и затем удалите файлы журнала. Тем не менее, можно ожидать, что любая запись с проблемой записи, связанной с журналом, потерпит неудачу.
Примечание 1 Вы используете 32-разрядную версию MongoDB, которая подходит только для тестирования. Обратите внимание, что 32-разрядная версия поддерживает только до 2 ГБ данных.
Примечание 2 MongoDB ОЧЕНЬ хорошо документировано. Вы действительно должны прочитать руководство сверху вниз - оно поможет вам быстро начать работу с предоставлением большого количества информации о внутренностях.
Та же ошибка.
Это вопрос разрешения. Если вы получаете эту ошибку на платформе Windows, вам следует выполнять все операции с правами администратора.
В Linux запустить
mongod - ремонт
но вы должны запускать его с помощью sudo или под root. Если вы находитесь под root, вы должны изменить владельца файлов в каталоге базы данных данных. Делайте это осторожно, иначе появится другая ошибка.
Запустите командную оболочку от имени администратора и вызовите start_mongo. Это должно это исправить
Попробуйте удалить файл блокировки, затем запустите --repair.
Вот что говорят Mongo Docs о восстановлении данных / перезапуске после неожиданного выключения.