Как перенести базу данных mongodb на другой компьютер, который не видит первый - PullRequest
28 голосов
/ 29 августа 2011

У меня есть сервер, который не может общаться с внешним миром. Я хотел бы получить его содержимое mongodb на другой сервер - но поскольку серверы не могут общаться друг с другом, db.copyDatabase () не подойдет.

Есть ли что-то вроде mysqldump, где я мог бы записать базу данных в двоичный файл, где-то найти ее, а затем использовать это для заполнения другого сервера mongodb?

Ответы [ 3 ]

29 голосов
/ 05 февраля 2016

Если вы используете Ubuntu / Linux, выполните следующие команды.Сначала mongodump на исходном сервере:

mongodump --db DataBaseName

Скопируйте созданную папку dump/DataBaseName на новый компьютер.Затем импортируйте, используя mongorestore:

mongorestore --db DataBaseName /path/to/DataBaseName 

Обратите внимание, что /path/to/DataBaseName должен быть каталогом, заполненным представлениями ваших данных в формате .json и .bson.

29 голосов
/ 29 августа 2011

Используйте команды mongodump и mongorestore .

mongodump --db test --collection collection
mongorestore --collection collection --db test dump/

Вы также можете использовать gzip.В документации есть больше примеров.

2 голосов
/ 08 марта 2019

Если вы хотите перенести базу данных в другую систему, вы должны использовать следующие команды:

Сначала выведите базу данных в выходной каталог:

mongodump --db DatabaseName -o ./DirectoryName

, затем скопируйте этот каталог ивставьте его в свой компьютер и введите команду:

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