ibd2sql是一个使用纯python3编写的离线解析MYSQL INNODB存储引擎的ibd文件的工具. 无第三方依赖包. 使用GPL-3.0 license.
能够从 .ibd 文件中提取数据并生成 .sql 文件,帮助用户在数据丢失和数据库损坏时有效恢复数据。尽管在某些方面有局限性,但其简单易用的特点使得它成为处理 MySQL 数据库问题时的得力助手。
特点
方便: 提取表DDL
实用: 可替换库(--schema)/表(--table)名, 可在sql语句中输出完整的字段(--complete)
简单: 纯python3代码编写, 无依赖包.
支持众多数据类型: 支持所有mysql数据类型
支持复杂的表结构: 分区表, 注释, 主键, 外键, 约束, 自增, 普通索引, 前缀索引, 主键前缀索引, 唯一索引, 复合索引, 默认值, 符号, 虚拟字段, INSTANT, 无主键等情况的表
数据误删恢复: 可以输出被标记为deleted的数据
安全: 离线解析ibd文件, 仅可读权限即可
支持范围广: 支持mysql 5.6 or 5.7 or 8.0 or 8.4 or 9.0
要求和支持范围
要求: python3
支持范围: mysql5.x 8.x 9.x
工具使用纯python3编写, 无依赖包, 所以建议直接使用源码。
ibd文件损坏的场景
如果ibd文件数据页损坏, 则可以跳过该页, 或者暴力解析.
对于想并发解析的, 也可以使用本方法.
如果是ibd文件的元数据信息损坏, 则要先恢复元数据信息. 然后使用--sdi-table选项指定正确的元数据信息文件.
github地址:https://github.com/ddcw/ibd2sql
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论0+