【发布时间】:2018-08-24 09:06:59
【问题描述】:
所以这是我的场景:
- 今天我的服务器被我们的主机重新启动(acpi 关闭)。
- 我的mongo数据库是一个简单的docker容器(mongo:3.2.18)
- 由于未知原因,容器在重新启动时未重新启动(
restart: always已在 docker-compose 中设置)。 - 我启动它,发现卷映射消失了。
- 我将它们恢复到旧路径,重新启动 mongo 容器,它启动时没有出现错误。
- 我连接到数据库,它完全是空的。
> show dbs
local 0.000GB
> use wekan
switched to db wekan
> show collections
> db.users.find();
>
另外我已经试过db.repairDatabase();,没有效果。
现在我的_data 目录包含很多 *.wt 文件等等。 (File list)
我发现 collection-0-2713973085537274806.wt 的文件大小约为 390MiB。
这可能是我需要恢复的数据,假设它的大小。
有什么方法可以恢复这些数据?
我已经根据this article 使用wt salvage 尝试了运气,但我无法让它运行 - 仍在尝试。
我知道备份,备份,备份!可惜这个数据库没有备份。
Related GitHub issue,包含软件的详细信息。
更新:
我能够使用WiredTiger Data Engine 工具创建一个.dump 文件。但是我无法将其导入 mongoDB。
【问题讨论】:
标签: database mongodb restore wiredtiger