Как создать дамп MongoDB моей базы данных?

Какую команду я использую и запускаю?

Ответ 1

Используйте mongodump:

$ ./mongodump --host prod.example.com
connected to: prod.example.com
all dbs
DATABASE: log    to   dump/log
        log.errors to dump/log/errors.bson
                713 objects
        log.analytics to dump/log/analytics.bson
                234810 objects
DATABASE: blog    to    dump/blog
        blog.posts to dump/log/blog.posts.bson
                59 objects
DATABASE: admin    to    dump/admin

Источник: http://www.mongodb.org/display/DOCS/Import+Export+Tools

Ответ 2

Чтобы сбросить базу данных для резервного копирования, вы вызываете эту команду на своем терминале

mongodump --db database_name --collection collection_name

Чтобы импортировать файл резервной копии в mongodb, вы можете использовать следующую команду на своем терминале

mongorestore --db database_name path_to_bson_file

Ответ 3

Вы также можете использовать gzip для резервного копирования одной коллекции и сжатия резервной копии на лету:

mongodump --db somedb --collection somecollection --out - | gzip > collectiondump.gz

или с датой в имени файла:

mongodump --db somedb --collection somecollection --out - | gzip > dump_'date "+%Y-%m-%d"'.gz

Обновить:
Резервное копирование всех коллекций базы данных в папке даты. Файлы сжаты:

mongodump --db somedb --gzip --out /backups/'date +"%Y-%m-%d"'

Или для одного архива:

mongodump --db somedb --gzip --archive > dump_'date "+%Y-%m-%d"'.gz

Или когда mongodb работает внутри докера:

docker exec <CONTAINER> sh -c 'exec mongodump --db somedb --gzip --archive' > dump_'date "+%Y-%m-%d"'.gz

Ответ 4

Эта команда сделает дамп данной базы данных в формате json и bson.

mongodump -d <database name> -o <target directory>

Ответ 5

Есть утилита под названием: mongodump В командной строке mongo вы можете ввести:

>./mongodump

Вышеупомянутое создаст дамп всех баз данных на вашем локальном хосте. Для создания дампа одной коллекции используйте:

./mongodump --db blog --collection posts

Посмотрите: mongodump

Ответ 6

Вам нужно открыть командную строку в качестве администратора в папке, где установлен Mongo (в моем случае: C:\Program Files\MongoDB\Server\3.4\bin). Если вы хотите сбросить всю базу данных, вы можете просто использовать:

mongodump --db database_name

У вас также есть возможность сбрасывать только определенные коллекции или сбрасывать все, кроме определенных (ых) коллекции (ов).

Если вы хотите сбросить только одну коллекцию (например, пользователей):

mongodump  --db database_name --collection users

Если вы хотите сбросить все, кроме коллекции пользователей:

mongodump  --db database_name --excludeCollection=users

Также можно вывести дамп в файл архива:

mongodump --archive=test.archive --db database_name

Ответ 7

Следующая команда подключается к удаленному серверу для сброса базы данных:

<> необязательные параметры используют их, если они вам нужны

  • host - порт имени хоста
  • имя порта прослушивания
  • имя пользователя db db
  • Имя db ssl
  • безопасное соединение
  • вывод в созданную папку с именем

    mongodump --host --port --username --db --ssl --password --out _date+ "% Y-% m-% d"

Ответ 8

Вы можете сбросить базу данных и восстановить следующую команду

mongodb  -d <Your_db_name> -o <path of your folder>

например, мое имя базы данных отслеживает, у меня есть дамп в папке дампа

mongodb  -d tracking -o dump

Восстановление дампа

mongorestore -d <databasename> <dum_path>

mongorestore -d tracking  dump/tracking

Ответ 9

Резервное копирование/восстановление Mongodb с учетом времени.

Резервное копирование:

sudo mongodump --db db_name --out /path_of_your_backup/'date +"%m-%d-%y"'

--db аргумент для имени базы данных

--out аргумент для пути вывода

Восстановление:

sudo mongorestore --db db_name --drop /path_of_your_backup/01-01-19/db_name/

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

Сроки:

Вы можете использовать crontab для резервного копирования по времени:

sudo crontab -e

Он открывается с помощью редактора (например, nano)

3 3 * * * mongodump --out /path_of_your_backup/'date +"%m-%d-%y"'

резервное копирование каждый день в 03:03

В зависимости от размера базы данных MongoDB у вас скоро может закончиться диск пространство со слишком большим количеством резервных копий. Вот почему это также рекомендуется чистить старые резервные копии регулярно или сжимать их. Например, чтобы удалить все резервные копии старше 7 дней вы можете использовать следующие bash Команда:

3 1 * * * find /path_of_your_backup/ -mtime +7 -exec rm -rf {} \;

удалить все резервные копии старше 7 дней

Удачи.

ссылка:https://www.digitalocean.com/community/tutorials/how-to-back-up-restore-and-migrate-a-mongodb-database-on-ubuntu-14-04

Ответ 10

cmd ->

C:\Program Files\MongoDB\Server\3.2\bin>mongodump.exe --db Dintest

Ответ 11

Ниже команда будет работать для сброса mongo db.

mongodump -d -o

В Windows: попробуйте это, где c:\mongodump - это расположение файла дампа, Он будет создавать метаданные в json, а резервное копирование в формате bson

C:\MongoDB\bin > mongodump -d -o c:\mongodump

Ответ 12

Или вы можете сделать резервную копию script в Windows, не забудьте добавить Winrar в% PATH%

bin\mongodump --db=COL1 -o D:\BACK\COL1
rar.exe a -ep1 -r COL1.rar COL1
rename COL1.rar "COL1_%date:~10,4%_%date:~7,2%_%date:~4,2%_%time:~0,2%_%time:~3,2%.rar"

#rmdir /s /q COL1 -> don;t run this on your mongodb/ dir !!!!!

Ответ 13

Возьмите резервную копию mongodb для конкретной БД и удалите 7-дневную резервную копию с помощью команды bin sh:

#!/bin/bash

MONGO_DATABASE="nexgtv_16"
APP_NAME="test"
MONGO_HOST="127.0.0.1"
MONGO_PORT="27017"
TIMESTAMP='date +%F-%H%M'
MONGODUMP_PATH="/usr/bin/mongodump"
BACKUPS_DIR="/home/mongodbbackups/backups/$APP_NAME"
BACKUP_NAME="$APP_NAME-$TIMESTAMP"
$MONGODUMP_PATH -d $MONGO_DATABASE
mkdir -p $BACKUPS_DIR
mv dump $BACKUP_NAME
tar -zcvf $BACKUPS_DIR/$BACKUP_NAME.tgz $BACKUP_NAME
rm -rf $BACKUP_NAME
find /home/mongodbbackups/backups/test/ -mindepth 1 -mtime +7 -delete

Ответ 14

Mongo сбрасывает и восстанавливает с uri к местным

mongodump --uri "mongodb://USERNAME: PASSWORD @IP_OR_URL: PORT/DB_NAME" --collection COLLECTION_NAME -o LOCAL_URL

Если вы не укажете --colletion COLLECTION_NAME, он сбрасывает всю БД.

Ответ 15

 Use -v to see progress of backup data
    mongodump -v --db dbname --out /pathforbackup/NewFolderforBackupData

 you can use it for restore also
    mongorestore -v --db dbname --drop /pathforbackup/NewFolderforBackupData/dbname

with multile v like -vvvv you will get more information

Ответ 16

mongodump -h имя-хоста -u dbusername -p dbpassword -db имя -bb -port portnumber -out/путь/папка

mongodump -h имя хоста -u dbusername -p dbpassword -db имя -bb -port portnumber --out/path/folder.gz