June 13, 2013

[MySQL 5.6] Innodb新特性之export/import 表文件

 在MySQL 5.6中,提供了新的接口来支持将单独表文件,从一个实例转移到另外一个实例。 对于MySQL运维同学来说,这是一个非常重要的特性,当MySQL实例挂掉了,或者因为其他什么原因重现异常了,就可以通过该特性,将所有的表迁移到其他实例。 以下分析及实验基于MySQL5.6.12 用法: 简单的实验了一把,使用sysbench创建的表 mysql>  FLUSH TABLES sbtest1 FOR EXPORT; Query OK, 0 rows affected (0.00 sec) 观察到sb库下产生的新文件: $ ls -lh sbtest1.* -rw-rw—- 1 mysql dba  563 Jun 10 10:29 sbtest1.cfg -rw-rw—- 1 mysql dba 8.5K Jun  7 11:29 sbtest1.frm -rw-rw—- 1 mysql dba 276M Jun  9 00:49 sbtest1.ibd .cfg包含了Innodb的数据词典信息,例如有多少列,数据类型及顺序是什么,以及包含哪些索引等等。 将ibd和cfg文件拷贝后,执行unlock tables,注意unlock操作会移除cfg文件 目标库上,建立对应的空表: […]