#mongodb #configuration
#mongodb #конфигурация
Вопрос:
Я создал конфигурационный файл mongodb по адресу path /etc/db, где я включил аутентификацию. При запуске процесса mongod, когда я предоставляю ему —config, порт 27017 запускается с включенной авторизацией, в противном случае авторизация будет отключена. Я хочу запустить 2 разных порта с разными конфигурационными файлами, как я могу это сделать. В настоящее время будут запущены два разных экземпляра.
mongod --storageEngine wiredTiger --dbpath "./digv" --port 27029
когда я предоставляю параметр —config, он выдает ошибку.
digvijay@digvijay-Vostro-3558:~$ mongod --config mongod.conf --storageEngine wiredTiger --dbpath "./digv" --port 27029
2019-04-16T12:01:29.994 0530 F CONTROL [main] Failed global initialization: FileNotOpen: Failed to open "/var/log/mongodb/mongod.log"
Могу ли я предоставить разные конфигурационные файлы и как?
Комментарии:
1. Пожалуйста, отредактируйте свой вопрос, чтобы включить фактическое сообщение об ошибке, которое вы получаете. Вы определенно можете запустить два
mongod
экземпляра с разными--config
путями. Вы должны убедиться, что экземпляры на одном хосте не используют общие значения конфигурации дляdbPath
комбинаций ,logpath
, илиbindIp
port
, поскольку каждому экземпляру требуется эксклюзивный доступ к этим ресурсам. Если вы хотите предоставить другой файл конфигурации, вы всегда можете скопировать существующую конфигурацию и изменить ее по своему усмотрению.2. В вопросе указана ошибка
3. Сообщение об ошибке указывает, что файл журнала MongoDB не может быть открыт. Если вы делитесь этим
mongod.conf
с другим экземпляром, оба не могут иметь одинаковые настройки дляlogpath
. Я подозреваю, что вы хотите сделать копию вашего конфигурационного файла MongoDB (напримерcp mongod.conf mongod-27029.conf
), внести все свои изменения в скопированную конфигурацию, а затем запустить свой второй экземпляр какmongod --config mongod-27029.conf
. Лучше включить все опции в конфигурационный файл (для согласованности), а не смешивать конфигурационный файл с параметрами командной строки.