Mysql Inno_space 处理损坏 ibd 文件
文章目录
Inno_space 处理 MySQL ibd 损坏的页
- Inno_space 是C++开发的工具,可以直接访问 ibd 文件,也可以修复损坏的页面
安装 inno_space
|
|
创建测试表并备份数据
- MySQL 创建测试表 testdb.sales,写入部分测试数据
- 进入 MySQL data 目录,备份当前 ibd 文件
|
|
- 查看表行数
|
|
模拟数据页损坏
- ibd 文件是 16进制,需以二进制打开,转成16进编辑,之后再转为二进制保存
- 安装 xxd
|
|
- 编辑 xxd 文件,大概文件内容如下
|
|

- vim 内转成十六进制编辑,转成十六进制文件内容大概如下
|
|

- 在文件中间部分,随机更改部分内容
|
|

- 转为二进制保存
|
|
- 重启实例,关注日志,关注error日志里面的错误页相关日志
- 由报错日志可知,错误页87
|
|
故障处理
删除损坏的页
|
|
- 查看当前行数
|
|
- 检查 error 日志已无报错信息
参考
文章作者 Xiang
上次更新 2024-09-13