2014-11-09 4 views
0

Я хотел бы использовать базу данных в базе данных, поэтому у меня есть dev DB с моими данными разработки в нем и с моим test DB со всеми моими тестовыми данными. Тем не менее, не представляется возможным разместить DB внутри БД с Mongo. Поэтому я предполагаю, что альтернативное решение состоит в том, чтобы создать другое монгольское соединение для разработчиков и тестов. Поэтому у меня есть каталог dev_data и каталог test_data, каждый со своим собственным файлом mongod.lock и каждый из которых прослушивает другой порт. Это хорошее решение? Как мне это сделать?базы данных MongoDB в базах данных

+1

Этот вопрос на самом деле не имеет смысла. Просто используйте две разные базы данных на одном сервере MongoDB. – JohnnyHK

+0

, так что если я запускаю dev и проверяю DB на localhost, как мне настроить их для использования разных портов? а также, когда я запускаю команды mongo или mongod, как мне настроить команды, чтобы поговорить с правой БД? –

+0

Зачем вам нужны они на разных портах? Независимо от того, какой драйвер вы используете, у вас будет какой-то способ выбрать базу данных, которую вы используете через соединение. – JohnnyHK

ответ

2

Это легко возможно. Вы можете начать, как многие процессы 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 

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

+1

Ошибка копирования патча - исправлена, спасибо! – xeraa

+0

круто спасибо, разные файлы журналов тоже, приятно знать. должны быть плюсы/минусы использования разных портов. Я предполагаю, что разные порты могут означать, что test/dev работают одновременно. Я мог видеть, что это как хорошая, так и плохая вещь. –

+0

upvoted, примет ответ, как только подтвержу, что это имеет смысл (для меня) –