MySQL社区

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

搜索
查看: 1928|回复: 0
打印 上一主题 下一主题

InnoDB 离线转储工具

[复制链接]
跳转到指定楼层
1#
发表于 2016-5-26 15:13:57 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

一,应用场景;

1,表空间严重损坏,无法恢复;
2,数据库表空间文件丢失后从磁盘上打捞出部分数据页面;
3,恢复删除记录;

二,功能;

从数据页中直接转储出文本格式的行数据,从而可以后期用 LOAD DATA INFILE 导入数据库;

三,前提条件;

1,知道表结构,也就是建表时的SQL语句;
2,表空间中的尽可能多的数据页面;

四,中文支持;

1,支持utf8,gb2312,gbk;(有同类工具,但对中文支持有很大问题,部分中文行不能转储或缺失部分数据)

五,工具界面;

六,操作步骤;

1,选择数据文件;
如果选择的是一个表空间文件,请钩选下方的”转储ibd文件”这样,行外数据会从当前idb文件中读取,同时还需要指定”主键索引ID”,因为同一个 ibd文件中可能有多个索引,有效数据只在聚簇索引中,也就是主键中.

2,选择表定义SQL文件;
用软件导出的SQL语句,尽量删除无用的部分,只保留建表语句,目前支持 ansi文本文件和uft8带BOM与不带BOM文件,目前不支持中文字段名,对于中文字段名,可以在SQL语句中替换成英文,可以正确转储行数据.

3,选择BLOB页面文件夹;
当要转储的是页面打捞工具提取的页面时,或表空间经过打捞工具分析时,BLOB页会保存在一个文件夹下,每个页面按”PAGE_ON”命名,当转储行遇到行外数据时会到这里查找行外数据.

4,选择转储输出文件;
这个不用解释;同时会在此文件相同文件夹下生成一个同名+”.sql”的文件,作为导入数据时的参考;

5,选择”MYSQL5.6或更高”;
当MYSQL版本大于等于5.6时需要钩选此项.


评分

1

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享淘帖 顶 踩
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|申请友链|小黑屋|Archiver|手机版|MySQL社区 ( 京ICP备07012489号   
联系人:周生; 联系电话:13911732319

GMT+8, 2024-5-6 04:20 , Processed in 0.075651 second(s), 34 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表