MySQL5.6.6以后默认innodb_file_per_table=ON,开启独立表空间后每张表有二个文件:
.frm file contains table structure/definition
.ibd file contains data of table as well as index
下面是InnoDB引擎独立表空间单张表在不同Server之类的move:
一,在目的端创建和源表一样的表结构(必须表结构一样)
1,源端:show create table test.tb_name;
2,目的端:create database test;
create table tb_name;
二,丢弃表空间
ALTER TABLE dst_tb_name DISCARD TABLESPACE;
三,复制.frm和.ibd文件到对应的数据库目录
cp tb_name.frm tb_name.ibd test/ -rf
chown mysql. test/ -R
四,导入表空间
ALTER TABLE dst_tb_name IMPORT TABLESPACE;
五,根据具体需求重命名表
rename table test.tb_name to test.tb_name_bak;
时间: 2024-10-11 00:11:03