Как восстановить дамп в вашем запущенном mongodb
Я хочу загрузить данные / восстановить данные дампа в mongoDB, используя mongorestore. Я пытаюсь командовать
mongorestore dump
но это дает мне ошибку
Sat Sep 21 16:12:33.403 JavaScript execution failed: SyntaxError: Unexpected identifier
Как мы можем восстановить или поместить данные в mongoDB?? Пожалуйста, дайте мне шаги.
14 ответов
mongodump: чтобы сбросить все записи:
mongodump -db databasename
Чтобы ограничить объем данных, включаемых в дамп базы данных, вы можете указать --db и --collection в качестве параметров для mongodump. Например:
mongodump --collection myCollection --db test
Эта операция создает дамп коллекции myCollection из базы данных "test" в подкаталоге dump/ текущего рабочего каталога. ПРИМЕЧАНИЕ. Mongodump перезаписывает выходные файлы, если они существуют в папке данных резервного копирования.
mongorestore: восстановить все данные
1) mongorestore --verbose \path\dump
или же
2) mongorestore --db databasename --verbose \path\dump\<dumpfolder>
Примечание: оба требуют экземпляров Mongod.
Дамп БД по mongodump
mongodump --host <database-host> -d <database-name> --port <database-port> --out directory
Восстановление БД по mongorestore
С восстановлением индекса
mongorestore --host <database-host> -d <database-name> --port <database-port> foldername
Без восстановления индекса
mongorestore --noIndexRestore --host <database-host> -d <database-name> --port <database-port> foldername
Импортировать одну коллекцию из CSV [1-й столбец будет считаться именем Col/Key]
mongoimport --db <database-name> --port <database-port> --collection <collection-name> --type csv --headerline --file /path/to/myfile.csv
Импорт одной коллекции из JSON
mongoimport --db <database-name> --port <database-port> --collection <collection-name> --file input.json
Чтобы восстановить одну базу данных:
1. Backup the 'users' database
$ mongodump --db users
2. Restore the 'users' database to a new database called 'users2'
$ mongorestore --db users2 dump/users
Каталог должен иметь имя "dump", и этот каталог должен иметь каталог, содержащий файлы.bson и.json. Этот каталог должен быть назван как ваше имя БД.
Например: если ваше имя базы данных является учреждением, то второе имя каталога должно быть учреждением.
После этого перейдите в каталог, содержащий папку дампа в терминале, и выполните команду
Монгорестор
Позаботьтесь о том, чтобы Монго заработало.
Это должно работать нормально.
Следуйте по этому пути.
C:\Program Files\MongoDB\Server\4.2\bin
Запустите cmd в папке bin и вставьте команду ниже
mongorestore --db <name-your-database-want-to-restore-as> <path-of-dumped-database>
Например:
mongorestore --db testDb D:\Documents\Dump\myDb
Вы можете сделать дамп на свой локальный компьютер с помощью этой команды:
mongodump -h <host>:<port> -u <username> -p <password> -d ubertower-new -o /path/to/destination/directory
Вы можете восстановить с локального компьютера вашу БД Mongo, используя эту команду
mongorestore -h <host>:<port> -u <username> -p <password> -d <DBNAME> /path/to/destination/directory/<DBNAME>
- Начать Mongod
- Перейдите в папку, в которую вы извлекли "enron.zip" в оболочке ОС (cmd для окон)
- Затем введите ">mongorestore -d your_db_name dump/enron"
Для восстановления базы данных mongoDB используйте эту команду здесь
mongorestore --db databasename --drop dump file path
Вы также можете восстановить скачанный Atlas Backup. .wt
Файлы WiredTiger (которые распаковываются или распаковываются как restore
папку) в локальный MongoDB.
Сначала сделайте резервную копию своего /data/db
путь. Назови это/data_20200407/db
. Во-вторых, скопируйте и вставьте все.wt
файлы из папки восстановления Atlas Backup на локальный /data/db
путь. Перезагрузите сервер Ubuntu или MongoDB. Запустите оболочку Mongo, и у вас должны быть восстановленные файлы.
Если вы можете отказаться от существующих коллекций, то для меня подойдет следующая команда.
- Хорошо, чтобы удалить существующие коллекции
$ uri_complete="your_complete_uri"
$ restoreFileName="your_restore_filename"
$ mongorestore --uri=$uri_complete -v --gzip --archive=$restoreFileName --drop
- Неправильно отбрасывать существующие коллекции
$ uri_complete="your_complete_uri"
$ restoreFileName="your_restore_filename"
$ mongorestore --uri=$uri_complete -v --gzip --archive=$restoreFileName
Если ваша база данных работает на локальном хосте на порте по умолчанию без аутентификации, то будет работать следующее.
$ mongorestore -v --gzip --archive=restorefile.gzip --drop
Подробнее - mongorestore
У меня было много неприятностей, поэтому я придумал собственное решение, я создал этот сценарий, просто установил путь внутри сценария и имя БД и запустил его, он сделает свое дело
#!/bin/bash
FILES= #absolute or relative path to dump directory
DB=`db` #db name
for file in $FILES
do
name=$(basename $file)
collection="${name%.*}"
echo `mongoimport --db "$DB" --file "$name" --collection "$collection"`
done
mongodump --host test.mongodb.net --port 27017 --db --username --password --authenticationDatabase admin --ssl --out
mongorestore --db --verbose
Процесс резервного копирования коллекций MongoDb.
- Найдите папку MongoDb в ProgramFiles или ProgramFiles32.
- Перейдите к папке bin . Найдите такой путь. C:\Program Files\MongoDB\Server\4.2\bin
- Заставьте вас установить Mongo Dump Tools.
- Если вы не найдете таких инструментов, перейдите по этой ссылке и установите их. Инструменты базы данных MongDb
- внутри папки bin откройте CMD или перейдите в папку Bin сервера MongdDb.
- Запустите эту команду mongodump --db yourdatabasename . после запуска этой команды начнется процесс создания дампа, и он создаст одну папку дампа в боковой корзине.
Процесс восстановления
откройте приглашение CMD в папке bin сервера Mongdb.
после этого запустите эту команду **mongorestore --db mydababse --verbose
D:\MongoDbBackup\mydababse\Dec28-21**(это путь, по которому я храню свою коллекцию резервных копий).
Некоторое время программе mongDb Restore требовалось разрешение на восстановление папки.
Для восстановления базы данных mongoDB используйте эту команду здесь. Сначала перейдите в расположение базы данных mongodb, например, например:cd Downloads / blank_db / v34000 После этого введите mongorestore -d v34000 ./