mysql 快速拷贝表


假设我们现在的目标是在 db1 库下,复制一个跟表 t 相同的表 r ,具体执行步骤如下

1.创建一个相同表结构的空表
create table r like t;

2.删除 idb文件
alter table r discard tablespace;

3.生成 cfg文件
flush table t for export;

4.到 db1 目录下拷贝文件,注意拷贝的两个文件 MySQL进程要有读写权限
cp t.cfg r.cfg
cp t.idb r.idb

5.在MySQL中执行
unlock tables;
这时候 t.cfg 文件会被删除

6. 在MySQL中执行
alter table r import tablespace
将r.ibd 文件作为表 r的新的表空间,由于这个文件的数据内容和t.idb是一样的,所以表r中就有了和表t相同的数据

猜你喜欢

转载自www.cnblogs.com/liang545621/p/12624872.html
今日推荐