首页
/ ibd2sql:将MySQL ibd文件轻松转换为SQL数据

ibd2sql:将MySQL ibd文件轻松转换为SQL数据

2026-02-06 05:06:49作者:钟日瑜

项目介绍

ibd2sql是一个功能强大的开源工具,专门用于将MySQL INNODB存储引擎的ibd文件转换为标准的SQL数据格式。该项目采用纯Python3编写,无需任何第三方依赖库,使用GPL-3.0开源协议,为数据库管理员和数据恢复工程师提供了极大的便利。

项目技术分析

ibd2sql的核心技术在于其离线解析能力,能够直接读取MySQL的ibd文件并生成相应的SQL语句。该工具支持所有MySQL数据类型,包括复杂的表结构如分区表、注释、主键、外键、约束、自增字段、各种索引类型等。同时支持INSTANT DDL操作和无主键表的处理。

项目及技术应用场景

该工具在以下场景中具有重要价值:

  1. 数据恢复:当数据库文件损坏或意外删除时,ibd2sql能够从ibd文件中恢复重要数据
  2. 数据库迁移:简化不同MySQL版本或服务器之间的数据迁移过程
  3. 数据备份:提供额外的数据备份手段,确保数据安全性
  4. 数据分析:获取生产环境数据的快照进行分析,不影响实际业务运行

项目特点

  • 安全性高:只需对ibd文件具有读取权限,完全离线操作
  • 兼容性强:支持MySQL 5.6至9.0的所有版本
  • 功能全面:支持所有MySQL数据类型和复杂表结构
  • 恢复能力强:可输出被标记为deleted的数据,支持drop table的恢复
  • 性能优异:最新版本性能提升超过20%
  • 使用简便:纯Python实现,无第三方依赖

下载与使用

下载方式

wget https://gitcode.com/gh_mirrors/ib/ibd2sql/-/archive/main/ibd2sql-main.zip
unzip ibd2sql-main.zip
cd ibd2sql-main

基本使用方法

Linux环境:

python3 main.py /path/to/your_table.ibd --sql --ddl

Windows环境:

python main.py F:\path\to\your_table.ibd --sql --ddl

Web控制台查看:

python3 ibd2sql_web.py /path/to/your_table.ibd
# 然后访问 http://your_ip:8080 查看数据结构

高级功能

  • 使用--schema参数替换数据库名
  • 使用--table参数替换表名
  • 使用--complete参数在SQL语句中输出完整字段信息
  • 使用--force参数跳过坏块遍历整个数据文件

版本更新

ibd2sql持续更新迭代,最新版本v1.12在修复已知BUG的同时,性能提升了20%。项目支持MySQL 5.x、8.x和9.x版本,具备强大的兼容性和稳定性。

推荐使用

对于数据库管理员、开发者和数据恢复工程师来说,ibd2sql是一个不可或缺的工具。它不仅能够提高工作效率,还能在紧急情况下挽救宝贵的数据。无论是日常的数据管理任务还是紧急的数据恢复场景,ibd2sql都能提供可靠的技术支持。

通过简单的命令行操作,您就可以开始使用这个强大的工具来处理MySQL数据库文件,享受高效便捷的数据处理体验。

登录后查看全文
热门项目推荐
相关项目推荐