MongoDB Изменение пути? - PullRequest
       3

MongoDB Изменение пути?

9 голосов
/ 18 октября 2011

Мой сервер вышел из строя из-за сбоя электропитания, и в течение нескольких ужасных секунд я думал, что потерял все данные MongoDB.Затем я понял, что при перезапуске сервера mongo автоматически перезапускается без опции --dbpath.

Я не могу понять, почему, хотя в моем mongodb.conf для dbpath установлено значение / var / lib/ mongodb, при запуске mongo искал файлы db в / data / db.Кто-нибудь может пролить свет на это?

Спасибо!

Ответы [ 4 ]

9 голосов
/ 03 ноября 2011

/data/db - это путь по умолчанию, в котором mongod будет искать файлы данных, если он запущен без параметров. Ваш сценарий запуска указывает mongod загрузить правильный файл конфигурации? Если нет, то это объяснило бы это поведение.

3 голосов
/ 07 ноября 2011

Когда вы в последний раз обновляли Mongod в своей системе? а как ты его обновил?

В зависимости от того, как вы установили / обновили Mongod, может случиться так, что либо файл /etc/init.d/mongo, либо файлы /etc/mongo.conf могут быть перезаписаны.

Или кто-то редактировал эти файлы давным-давно, и впервые Монго перезапускается, и теперь, похоже, внезапно произошли изменения.

Я не видел, чтобы какое-то из этих двух событий происходило долгое время (но если вы используете Gentoo, вы, вероятно, увидите, что это произойдет)

Какую ОС вы используете?

Хорошая идея - хранить резервные копии этих файлов ...

2 голосов
/ 06 ноября 2011

Вы обязательно должны убедиться, что ваш скрипт инициализации для Mongo содержит полный путь к каталогу данных.Вот фрагмент того, что мы используем в нашем производственном развертывании:

ulimit -s unlimited

MONGO_USER=mongo
MONGO_HOME=/opt/mongo
MONGO_DATA=/san2/data
MONGO_LOGS=/home/mongo/logs


start() {
    su $MONGO_USER -c "$MONGO_HOME/bin/mongod  --master --fork --logpath $MONGO_LOGS/mongodb.log --logappend --dbpath $MONGO_DATA  --maxConns 2400"
}
1 голос
/ 08 ноября 2011

Проверьте параметры запуска в /etc/default/mongodb, скорее всего, для них будет задан путь по умолчанию /data/db вместо того, который вы выбрали при запуске вручную.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...