git clone https://github.com/twindb/undrop-for-innodb.git

make

[root@redis01 undrop-for-innodb]# make
cc -D_FILE_OFFSET_BITS= -Wall -g -O3 -pipe -I./include -c stream_parser.c
cc -D_FILE_OFFSET_BITS= -Wall -g -O3 -pipe -I./include -pthread -lm stream_parser.o -o stream_parser
flex sql_parser.l
sql_parser.l:: warning, the character range [
-Y] is ambiguous in a case-insensitive scanner
sql_parser.l:: warning, the character range [a] is ambiguous in a case-insensitive scanner
bison -o sql_parser.c sql_parser.y
sql_parser.y: conflicts: shift/reduce
cc -D_FILE_OFFSET_BITS= -Wall -g -O3 -pipe -I./include -c sql_parser.c
lex.yy.c:: warning: ‘yyunput’ defined but not used
lex.yy.c:: warning: ‘input’ defined but not used
cc -D_FILE_OFFSET_BITS= -Wall -g -O3 -pipe -I./include -c c_parser.c
./include/ctype-latin1.c:: warning: ‘my_mb_wc_latin1’ defined but not used
./include/ctype-latin1.c:: warning: ‘my_wc_mb_latin1’ defined but not used
cc -D_FILE_OFFSET_BITS= -Wall -g -O3 -pipe -I./include -c tables_dict.c
cc -D_FILE_OFFSET_BITS= -Wall -g -O3 -pipe -I./include -c print_data.c
cc -D_FILE_OFFSET_BITS= -Wall -g -O3 -pipe -I./include -c check_data.c
cc -D_FILE_OFFSET_BITS= -Wall -g -O3 -pipe -I./include sql_parser.o c_parser.o tables_dict.o print_data.o check_data.o -o c_parser -pthread -lm
cc -D_FILE_OFFSET_BITS= -Wall -g -O3 -pipe -I./include -o innochecksum_changer innochecksum.c

创建恢复数据库

create database recovery;

抽取数据字典

create database recovery;
./stream_parser -f /data/mysql//ibdata1
mkdir -p dumps/default
./c_parser -6f pages-ibdata1/FIL_PAGE_INDEX/0000000000000001.page -t dictionary/SYS_TABLES.sql > dumps/default/SYS_TABLES 2> dumps/default/SYS_TABLES.sql
./c_parser -6f pages-ibdata1/FIL_PAGE_INDEX/0000000000000003.page -t dictionary/SYS_INDEXES.sql > dumps/default/SYS_INDEXES 2> dumps/default/SYS_INDEXES.sql
加载数据
mysql -u root -p recovery < dictionary/SYS_TABLES.sql
mysql -u root -p recovery < dictionary/SYS_INDEXES.sql
mysql -u root -p recovery < dumps/default/SYS_TABLES.sql
mysql -u root -p recovery < dumps/default/SYS_INDEXES.sql

  

查看数据信息

mysql> select * from SYS_TABLES where name like '%tb%';
+-------+----+--------+------+--------+---------+--------------+-------+
| NAME | ID | N_COLS | TYPE | MIX_ID | MIX_LEN | CLUSTER_NAME | SPACE |
+-------+----+--------+------+--------+---------+--------------+-------+
| ht/tb | | | | | | | |
+-------+----+--------+------+--------+---------+--------------+-------+
row in set (0.00 sec)
mysql> select * from SYS_INDEXES where table_id=;
+----------+----+---------+----------+------+-------+---------+
| TABLE_ID | ID | NAME | N_FIELDS | TYPE | SPACE | PAGE_NO |
+----------+----+---------+----------+------+-------+---------+
| | | PRIMARY | | | | |
+----------+----+---------+----------+------+-------+---------+
row in set (0.00 sec)

mysql生成数据字典的更多相关文章

  1. mysql 生成数据字典sql语句

    SELECT TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME, COLUMN_TYPE, COLUMN_COMMENT FROM information_schema. C ...

  2. 用php生成数据字典

    <?php header("Content-type: text/html; charset=utf-8"); $dbserver = "localhost&quo ...

  3. php生成数据字典,代码

    <?php /** * 生成mysql数据字典 */ header("Content-type:text/html;charset=utf-8"); // 配置数据库 $da ...

  4. MySQL导出数据字典

    平时用mysql比较多,有时候需要详细的数据库设计表结构和数据字典,但又没有最新的文档,这个时候直接从数据导出是最新最全的.在MySQL数据库中利用information_schema库中的COLUM ...

  5. PHP连数据库生成数据字典

    <?php /** * 生成mysql数据字典 */ header("Content-type:text/html;charset=utf-8"); // 配置数据库 $da ...

  6. highcharts实例教程二:结合php与mysql生成饼图

    上回我们分析了用highcharts结合php和mysql生成折线图的实例,这次我们以技术cto网站搜索引擎流量为例利用highcharts生成饼图. 饼图通常用在我们需要直观地显示各个部分所占的比例 ...

  7. 使用OpenXml实现生成数据字典文档(beta)

    最近项目在走验收流程,之前没有仔细看SOW文档,发现需要补好多份文档,其中就有数据字典,项目组不愿意花时间太多的时间弄这些文档,也不希望以后还要重复劳动力,最终决定做一个工具,方便自己生成数据字典文档 ...

  8. 利用TPC-H为MYSQL生成数据

    ## 利用TPC-H为MYSQL生成数据 导言 这篇文章是看了joyee写的TPC-H数据导入MySQL教程以及另一篇网上的MySQL TPCH测试工具简要手册 后写的,有些内容是完全转载自以上两篇文 ...

  9. 一条SQL生成数据字典

    有个字典表并定期维护,对DBA和开发很重要,终于把他们整合在一起了,看有没问题? 一条SQL生成数据字典,包含所有OPEN用户.表名.字段名.字段序号.字段属性.默认值.是否非空.字段意思.主键标识. ...

随机推荐

  1. 从word得到表格数据插入数据库(6位行业代码)

    复制表格到excel 点击表格左上角选中全部表格,然后crtl+c,再贴到excel中 可以发现,大类代码,单元格往下走,碰到下一个有值的之前,都是上一个的范围 填充空白单元格 1.选中前四列,然后c ...

  2. Consul 域名服务

    =============================Web请求的全过程(包含DNS) =============================完整过程参考 https://blog.csdn. ...

  3. GCC编译器原理(一)03------GCC 工具:gprof、ld、libbfd、libiberty 和libopcodes

    1.3.7 gprof:性能分析工具 参考文档:https://www.cnblogs.com/andashu/p/6378000.html gprof是GNU profile工具,可以运行于linu ...

  4. MVC下 Area和Web同名的Controller问题

    错误如下图: 解决方案: 1:Area下的XXXAreaRegistration 添加:new string[] { "xxx.Areas.xxx.Controllers" } 2 ...

  5. Nginx 关闭日志生成文件

    nginx 关闭日志:其实一种方法就是写入/dev/null 文件 或者设置关闭: nginx 日志有两个类型  access.log  http 记录访问日志. error.log   server ...

  6. 改变select箭头样式

    链接:https://blog.csdn.net/java_zhaoyanli/article/details/52549787 改变select箭头样式的方法: 1,去掉箭头: 2,设置图片为背景: ...

  7. [C++]PAT乙级1005. 继续(3n+1)猜想 (25/25)

    /* 1005. 继续(3n+1)猜想 (25) 卡拉兹(Callatz)猜想已经在1001中给出了描述.在这个题目里,情况稍微有些复杂. 当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记录下递推 ...

  8. :target方法实现切换

    <!DOCTYPE HTML><html><head> <title>:target切换</title> <meta charset= ...

  9. Viterbi

    把语音分割为计算发音质量测度所需要的小单元时候,需要进行Viterbi对齐 Viterbi,在htk和sphinx中,也被称作token passing model Viterbi解码图是 状态数Sm ...

  10. day 5 - 2 字典(dict)练习

    1. 有如下变量(tu 是个元祖),请实现要求的功能 tu = ("alex",[11,22,{"k1":'v1',"k2":[" ...