Я хотел бы использовать базу данных в базе данных, поэтому у меня есть dev DB
с моими данными разработки в нем и с моим test DB
со всеми моими тестовыми данными. Тем не менее, не представляется возможным разместить DB внутри БД с Mongo. Поэтому я предполагаю, что альтернативное решение состоит в том, чтобы создать другое монгольское соединение для разработчиков и тестов. Поэтому у меня есть каталог dev_data и каталог test_data, каждый со своим собственным файлом mongod.lock
и каждый из которых прослушивает другой порт. Это хорошее решение? Как мне это сделать?базы данных MongoDB в базах данных
ответ
Это легко возможно. Вы можете начать, как многие процессы mongod, как вы хотите, как это - просто убедитесь, что существуют каталоги данных и как папки данных, а также файл журнала является записываемым:
mongod --dbpath /opt/dev --port 27001 --logpath /var/log/mongodb/dev.log
mongod --dbpath /opt/prd --port 27002 --logpath /var/log/mongodb/prd.log
Если это действительно необходимо или если несколько баз данных, будут достаточны другое дело, но вы будете лучше знать, что вам нужно для вашей ситуации.
Ошибка копирования патча - исправлена, спасибо! – xeraa
круто спасибо, разные файлы журналов тоже, приятно знать. должны быть плюсы/минусы использования разных портов. Я предполагаю, что разные порты могут означать, что test/dev работают одновременно. Я мог видеть, что это как хорошая, так и плохая вещь. –
upvoted, примет ответ, как только подтвержу, что это имеет смысл (для меня) –
Этот вопрос на самом деле не имеет смысла. Просто используйте две разные базы данных на одном сервере MongoDB. – JohnnyHK
, так что если я запускаю dev и проверяю DB на localhost, как мне настроить их для использования разных портов? а также, когда я запускаю команды mongo или mongod, как мне настроить команды, чтобы поговорить с правой БД? –
Зачем вам нужны они на разных портах? Независимо от того, какой драйвер вы используете, у вас будет какой-то способ выбрать базу данных, которую вы используете через соединение. – JohnnyHK