如何将转储恢复到正在运行的mongodb中

San*_*ngh 22 mongodb data-dump mongorestore

我想使用mongorestore在mongoDB中加载数据/恢复转储数据.我想命令

mongorestore dump
Run Code Online (Sandbox Code Playgroud)

但它给了我错误

Sat Sep 21 16:12:33.403 JavaScript execution failed: SyntaxError: Unexpected identifier
Run Code Online (Sandbox Code Playgroud)

我们如何将数据恢复或放入mongoDB?请给我一些步骤.

Arm*_*ega 40

mongodump: 转储所有记录:

mongodump -db databasename
Run Code Online (Sandbox Code Playgroud)

要限制数据库转储中包含的数据量,可以指定--db和--collection作为mongodump的选项.例如:

mongodump --collection myCollection --db test
Run Code Online (Sandbox Code Playgroud)

此操作从当前工作目录的dump /子目录中的数据库'test'创建名为myCollection的集合的转储.注意:如果输出文件存在于备份数据文件夹中,mongodump将覆盖它们.


mongorestore: 恢复所有数据

1) mongorestore --verbose \path\dump
Run Code Online (Sandbox Code Playgroud)

要么

2) mongorestore --db databasename --verbose \path\dump\<dumpfolder>
Run Code Online (Sandbox Code Playgroud)

注意:两者都需要mongod实例.

  • @Benjamin `mongorestore -u &lt;username&gt; --authenticationDatabase "admin" --db databasename`。身份验证数据库不一定是“管理员”,但可能是。应该以交互方式要求您输入密码(您可能还需要使用 sudo 提升权限)。 (3认同)
  • mongodump -db对我不起作用,改用-d标志。Mongo DB v4.0.5 (2认同)

Soh*_*aul 16

通过mongodump转储数据库

mongodump --host <database-host> -d <database-name> --port <database-port> --out directory
Run Code Online (Sandbox Code Playgroud)

通过mongorestore恢复数据库

使用索引还原

mongorestore --host <database-host> -d <database-name> --port <database-port> foldername
Run Code Online (Sandbox Code Playgroud)

没有索引还原

mongorestore --noIndexRestore --host <database-host> -d <database-name> --port <database-port> foldername
Run Code Online (Sandbox Code Playgroud)

从CSV导入单个集合[第一列将被视为列/键名称]

mongoimport --db <database-name> --port <database-port> --collection <collection-name> --type csv --headerline --file /path/to/myfile.csv
Run Code Online (Sandbox Code Playgroud)

从JSON导入单个集合

mongoimport --db <database-name> --port <database-port> --collection <collection-name> --file input.json
Run Code Online (Sandbox Code Playgroud)


小智 12

该目录应命名为"dump",该目录应包含一个包含.bson和.json文件的目录.此目录应命名为您的数据库名称.

例如:如果您的数据库名称是机构,那么第二个目录名称应该是机构.

完成此步骤后,转到终端中包含dump文件夹的目录,然后运行该命令

mongorestore - drop.

确保mongo正常运行.

这应该工作正常.


mar*_*nho 10

恢复单个数据库:

1. Backup the 'users' database
$ mongodump --db users

2. Restore the 'users' database to a new database called 'users2'
$ mongorestore --db users2 dump/users
Run Code Online (Sandbox Code Playgroud)

恢复所有数据库:

1. Backup all databases
$ mongodump

2. Restore all databases
$ mongorestore dump
Run Code Online (Sandbox Code Playgroud)


ama*_*raj 6

走这条路。

C:\Program Files\MongoDB\Server\4.2\bin
Run Code Online (Sandbox Code Playgroud)

在 bin 文件夹中运行 cmd 并粘贴以下命令

mongorestore --db <name-your-database-want-to-restore-as> <path-of-dumped-database>
Run Code Online (Sandbox Code Playgroud)

例如:

mongorestore --db testDb D:\Documents\Dump\myDb
Run Code Online (Sandbox Code Playgroud)


小智 5

您可以使用以下命令将转储到本地计算机:

mongodump -h <host>:<port> -u <username> -p <password> -d ubertower-new -o /path/to/destination/directory
Run Code Online (Sandbox Code Playgroud)

您可以使用此命令从本地计算机恢复到 Mongo DB

mongorestore -h <host>:<port> -u <username> -p <password> -d <DBNAME> /path/to/destination/directory/<DBNAME>
Run Code Online (Sandbox Code Playgroud)