我如何 mongo 使用 /data/db/ 中具有多个本地数据库的输入目录进行恢复?
How do I mongo restore using an input directory with multiple local dbs in /data/db/?
我的 /data/db
目录中有 4 个本地数据库
$ mongo
MongoDB shell version: 3.2.9
connecting to: db-A
$ show dbs
db-A 0.00gb
db-B 0.02gb
db-C 0.08gb
db-D 0.00gb
当我尝试 运行:
$ mongorestore -h dsxxxxx.mlab.com:xxxxx -d <dbname> -u <user> -p <password> /data/db`
它将 db-A
数据库导入到我的 mlab 数据库中,如何指定我要导入 db-C
数据库?
如果您要将数据从一个 mongodb 实例移动到另一个,您需要先从第一个数据库中转储数据,然后再将其导入到其他数据库。您不能使用 mongorestore 直接读取源数据库和 "restore" 它到新数据库。
您可以在目标 mongo 使用 copyDatabase() 命令从其他机器复制整个数据库。
还有mongodb-connector你也可以用的。实际上,它是 "replicate" 两个实例之间的一种方式的非常方便的工具。
这是一个旧的 post,但我想我会 post 我的发现。
如果您对所有数据库使用 mongodump -d dbname -o /path/to/folder
,则可以使用 mongorestore /path/to/folder
,它将读取文件夹中的所有数据库。
我的 /data/db
目录中有 4 个本地数据库
$ mongo
MongoDB shell version: 3.2.9
connecting to: db-A
$ show dbs
db-A 0.00gb
db-B 0.02gb
db-C 0.08gb
db-D 0.00gb
当我尝试 运行:
$ mongorestore -h dsxxxxx.mlab.com:xxxxx -d <dbname> -u <user> -p <password> /data/db`
它将 db-A
数据库导入到我的 mlab 数据库中,如何指定我要导入 db-C
数据库?
如果您要将数据从一个 mongodb 实例移动到另一个,您需要先从第一个数据库中转储数据,然后再将其导入到其他数据库。您不能使用 mongorestore 直接读取源数据库和 "restore" 它到新数据库。
您可以在目标 mongo 使用 copyDatabase() 命令从其他机器复制整个数据库。
还有mongodb-connector你也可以用的。实际上,它是 "replicate" 两个实例之间的一种方式的非常方便的工具。
这是一个旧的 post,但我想我会 post 我的发现。
如果您对所有数据库使用 mongodump -d dbname -o /path/to/folder
,则可以使用 mongorestore /path/to/folder
,它将读取文件夹中的所有数据库。