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

相关推荐
MySQL实战1 天前
Redis 7.0 新特性之maxmemory-clients:限制客户端内存总使用量
数据库·redis
VX:Fegn08951 天前
计算机毕业设计|基于springboot + vue校园社团管理系统(源码+数据库+文档)
前端·数据库·vue.js·spring boot·后端·课程设计
北亚数据恢复1 天前
虚拟机数据恢复—ESXi虚拟机下SqlServer数据库数据恢复案例
数据库
susu10830189111 天前
使用navicat创建事件event报错You have an error in your SQL syntax
数据库·sql
水力魔方1 天前
武理排水管网模拟分析系统应用专题5:模型克隆与并行计算
数据库·c++·算法·swmm
cike_y1 天前
Spring-Bean的作用域&Bean的自动装配
java·开发语言·数据库·spring
stella·1 天前
mysql的时区问题
数据库·mysql·timezone·时区
+VX:Fegn08951 天前
计算机毕业设计|基于springboot + vueOA工程项目管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·课程设计
wang6021252181 天前
阿里云存储的下载验证
数据库·阿里云·fastapi
独自破碎E1 天前
Spring Boot工程启动以后,怎么将数据库中已有的固定内容打入到Redis缓存中?
数据库·spring boot·缓存