我正在将我们的数据库升级到 Mongo 3.0,我正在将我们的日常备份过程从使用mongodump 2.6.1 升级到 3.0.1,由于并行化集合下载,它具有更高的性能。
我遇到了一个问题,mongodump 在中途失败并出现错误
....
2015-04-10T00:42:54.606+0000 [##############..........] XXX.XXXXXXX 6804841/11236617 (60.6%)
2015-04-10T00:42:57.352+0000 Failed: error reading collection: Closed explicitly.
在 8 次尝试中,有 6 次失败,其中 2 次成功。我一直无法在网上找到有关此特定错误的任何其他信息。
- 整个 mongodump 大小约为 1TB,有数千个集合。失败发生在中间的某个地方。mongodump确实启动了,因为许多
.bson
文件开始在磁盘中累积,我可以在 mongodump 的输出中看到进度文件- 对 150GB 的 mongo 2.4 实例运行相同的代码时,它似乎运行良好,它可能运行的时间不够长,无法遇到错误
- 我要转储的 mongo 数据库版本是 2.4,我们计划升级 2.4 -> 2.6 -> 3.0。所以我们想提前升级 mongodump 工具,希望它能在 2.4 和 2.6 上正常工作。
- 当前的备份服务器对 2.4 的 mongo 数据库使用 mongodump 2.6.1,并且它们在备份管道的 mongodump 阶段一直运行良好,100% 的可靠性
mongodump 备份服务器(谷歌计算引擎虚拟机)位于与 mongo 服务器(硬金属服务器)不同的机器上,mongo 服务器位于防火墙后面。所以我们在两台机器之间建立一个SSH隧道,然后用
--port
命令执行一次mongodump。它看起来像这样:ssh -M -N -L 1234:localhost:27017 <remote_ip> mongodump --port 1234 --username XXX --password XXX --out /tmp/dir
谁能给我一些关于可能发生的事情的提示?当我们的 mongo 数据库完全升级到 3.0 时,我们将需要使用 mongodump 3.0。
更新:我得到的另一个错误是
2015-04-14T22:56:37.939+0000 Failed: error reading collection: read tcp XXX.X.X.X:XXXXX: use of closed network connection