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. nodejs 下载远程图片

    var express = require('express'); var request = require('request');var http = require('http');var ur ...

  2. 深入理解Python异步编程(上)

    本文代码整理自:深入理解Python异步编程(上) 参考:A Web Crawler With asyncio Coroutines 一.同步阻塞方式 import socket def blocki ...

  3. Spring boot 连接Redis实现HMSET操作

    这篇文章记录使用spring-boot-starter-redis访问Redis.Redis相关的的配置文件放在Resources目录下的application.yml文件中,如下所示: spring ...

  4. ubuntu没有/usr/include/sys目录

    实际上不是没有sys目录,只是系统给换路径了 32位系统:/usr/incude/i386-linux-gnu/sys 64位系统:/usr/include/x86_64-linux-gnu/sys/ ...

  5. 调用waitpid的SIGCHLD信号处理函数

    #include <stdio.h> #include <sys/wait.h> void sig_chld(int signo) { pid_t pid; int stat; ...

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

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

  7. 【noip 2014】提高组Day2T3.华容道

    Description 小 B 最近迷上了华容道,可是他总是要花很长的时间才能完成一次.于是,他想到用编程来完成华容道:给定一种局面,华容道是否根本就无法完成,如果能完成,最少需要多少时间. 小 B ...

  8. PHP实现权限管理功能

    权限管理系统,它主要是为了给不同的用户设定不同的权限,从而实现不同权限的用户登录之后使用的功能不一样. 首先先看下数据库 总共有5张表,users,roles和roleswork 3张表与另外2张表形 ...

  9. C# EF框架调用数据库的函数

    1.在数据库中创建一个自定义函数: REATE FUNCTION [dbo].[f_IsOriginsDisabled] ( ), @needPPTV bit ) RETURNS bit AS BEG ...

  10. MySQL数据库的版本更新方法

    MySQL数据库的版本更新很快,新的特性也随之不断的更新,更主要的是解决了很多影响我们应用的BUG,为了让我们的MySQL变得更美好,我们有必要去给它升级,尽管你会说它现在已经跑得很好很稳定完全够用了 ...