MongoDB数据恢复

K8S部署的MongoDB突然不能正常启动容器了,报错信息如下:

复制代码
WiredTiger error (-31804)

经常是数据文件损坏,需要修复。操作过程如下:

先把K8S上面的MongoDB 容器停止(可以把副本改成0)。

1、将容器挂载MongoDB的数据目录备份到本地。

2、 Windows 下载MongoDB程序

3、到MongoDB的bin目录下,执行

复制代码
mongod --dbpath 

4、启动mongo

复制代码
mongod --dbpath

如果修复正常,再将文件覆盖会挂载目录。

5、K8S上面的MongoDB 容器启动

注意:两个MongoDB的版本要一致,本文使用的是mongo:4.2.24

相关推荐
吃糖的小孩8 小时前
给 QQ AI 机器人设计“可控记忆”:会话摘要、手动长期记忆与角色卡边界
数据库
葫芦和十三9 小时前
图解 MongoDB 17|大集合与工作集:数据超过内存怎么办
后端·mongodb·面试
葫芦和十三17 小时前
图解 MongoDB 18|复制集拓扑:Primary、Secondary 和 Arbiter 的分工
后端·mongodb·面试
葫芦和十三1 天前
图解 MongoDB 15|journal 与持久化:写入怎么不丢,崩溃怎么恢复
后端·mongodb·面试
葫芦和十三1 天前
图解 MongoDB 16|压缩:snappy、zstd 和 zlib 的取舍
后端·mongodb·面试
笃行3501 天前
金仓数据库数据安全双防线:静态存储加密与传输加密实战
数据库
笃行3501 天前
金仓数据库物理备份实战:sys_rman 全流程演练与误覆盖抢救
数据库
笃行3501 天前
金仓数据库逻辑备份实战:从全库导出到 Schema 替换的完整闭环
数据库
葫芦和十三2 天前
图解 MongoDB 13|WiredTiger 存储引擎:B-tree、页和 checkpoint 三件套
后端·mongodb·agent