我们正在尝试在一个相对较小的数据库上做一个简单的 MongoDump。
我们的步骤很简单:
出口
从目标机器中删除现有数据库
在目标机器上导入
MongoDump 完美执行。
mongodump --out=/root/mongo-prod
DB drop 也是如此:
mongo db_name --eval "db.dropDatabase()"
另一方面,调用 mongoRestore 后
mongorestore --stopOnError --drop --db db_name /root/mongo-prod-{{ build }}/db_name/
导入过程开始,并挂在 3 个特定的集合上,并重复出现以下错误:
no collection options to restore
restoring db_name.Collection4 from file /root/mongo-prod-31/db_name/Collection4.bson
file /root/mongo-prod-31/db_name/Collection4.bson is 56625 bytes
using 1 insertion workers
[########################] db_name.Collection1 106.7 KB/106.7 KB (100.0%)
[########################] db_name.Collection2 63.5 KB/63.5 KB (100.0%)
[######..................] db_name.Collection3 6.7 MB/25.9 MB (25.8%)
[########################] db_name.Collection4 55.3 KB/55.3 KB (100.0%)
[########################] db_name.Collection1 106.7 KB/106.7 KB (100.0%)
[########################] db_name.Collection2 63.5 KB/63.5 KB (100.0%)
[######..................] db_name.Collection3 6.7 MB/25.9 MB (25.8%)
[########################] db_name.Collection4 55.3 KB/55.3 KB (100.0%)
******* 这无限循环 *******
ps 将 --repair 添加到 mongodump 命令,会在 mongorestore 上创建不同的错误:
Failed: restore error: db_name.Collection1: error restoring from /root/mongo-prod-33/db_name/Collection1.bson: insertion error: E11000 duplicate key error index: db_name.Collection1.$_id_ dup key: { : ObjectId('5651802de4b0293285f7f508') }