Как использовать mongodump для 1 коллекции

Как я могу использовать mongodump переместить одну коллекцию из одной базы данных в другую?

Как мне использовать команду и ее параметры?

6 ответов

Я думаю, что это просто

mongodump --db=<old_db_name> --collection=<collection_name> --out=data/

mongorestore --db=<new_db_name> --collection=<collection_name> data/<db_name>/<collection_name>.bson

Также смотрите документы здесь и здесь.

Кстати, другой способ перемещения коллекции из одной базы данных в другую заключается в использовании renameCollection:

db.runCommand({renameCollection:"<old_db_name>.<collection_name>",to:"<new_db_name>.<collection_name>"})

Вот некоторые связанные темы:

Надеюсь, это поможет.

Получение базы данных (документа) дампа (резервной копии)

mongodump --host <hostname-of-mongoserver> --db <db-name> --username <dbuser-name> --password <password> --gzip --out </backup/location/>

Принимая дамп коллекции (резервное копирование)

mongodump --host <hostname-of-mongoserver> --db <db-name> --collection <collection-name> --username <dbuser-name> --password <password> --gzip --out </backup/location/>

mongodump документация

Очень простые команды для дампа mongodb.

  1. Сбросить всю коллекцию

    mongodump
    
  2. Только дамп конкретной базы данных

    mongodump --db=DB_NAME
    
  3. Дамп базы данных с именем пользователя и паролем

    mongodump -u=USERNAME -p=PASSWORD --db=DB_NAME
    
  4. Дамп с другого хоста

    mongodump --host HOST_NAME/HOST_IP --port HOST_PORT  --out {YOUR_DIRECTOTY_PATH} --db=DB_NAME
    

Возможность создания дампа с другого хоста только тогда, когда это разрешено.

Если это набор реплик, и вы хотите использовать его, вы должны использовать его так, потому что в документации указано, что вы не можете указать некоторые параметры при использовании --uri

      mongodump --uri "mongodb://user:password@mongo-en-1.example.io:27017,mongo-en-2.example.io:27017,mongo-en-3.example.io:27017/$Databasename?replicaSet=$replicasetname&authSource=admin"  --collection $collectionname

Затем восстановите его обычным способом.

Ни один из них не работает у меня при создании дампа для атласа MongoDB. Вот небольшое изменение в хосте, которое работает для меня

Свалка

      mongodump --uri mongodb+srv://<USERNAME>:<PASSWORD>@host.abcd.mongodb.net/db_name --collection "user_collection" --gzip --out db_backup_folder

Восстановить

      mongorestore --uri mongodb+srv://<USERNAME>:<PASSWORD>@dbhost.abcd.mongodb.net -d db_name --gzip  db_backup_folder

атлас-база данных-инструменты-резервное копирование-восстановление

Вот пример того, как вы можете экспортировать одну коллекцию с mongodump.exe в Windows 10:

"D:\Program Files\MongoDB\Server\4.0\bin\mongodump.exe" -h localhost --port 27017 -d meteor --collection users -o meteor_users

Экспортированная коллекция users, база данных meteor, гостья localhost, порт 27017.

Результат будет сохранен в каталоге meteor_users.

Для восстановления следует использовать такую ​​команду:

"D:\Program Files\MongoDB\Server\4.0\bin\mongorestore.exe" -d meteor -c users users.bson
Другие вопросы по тегам