mysql5.7物理快速复制大数据表

本文介绍了在MySQL5.7环境下,如何利用物理方式快速复制大数据表,包括创建相同表结构、删除目标表空间、复制ibd文件并导入,以及对frm和ibd文件的处理,以及MySQL8中字典缓存的替代作用。

mysql5.7物理快速复制大数据表

在mysql5.7下复制大表一般用mysql,mysqldump命令导出后再导入,如果表比较大,这个时间就比较长了。我们使用物理的方式迅速复制大表 。

mysql5.7一般用innodb表引擎。对于物理结构有frm和ibd表,前者是表结构,后者是表数据又称表空间。(到了mysql8 取消了frm)

步骤

物理复制数据表具体步骤如下:

1.在目标库建立与源数据表相同的表结构的表

如源数据库source有源数据表user。在目标数据库target建立表与source.user相同表结构的目标数据表target.user。在数据库目录,找到target.user对应得物理数据文件user.frm和user.ibd。

2. 删除目标数据库表空间(.ibd文件)

alter table user discard tablespace;

3. 复制源数据库.ibd文件到目标数据库

用cp,scp进行将源数据库的源数据表的.ibd文件复制到目标数据库的物理储存位置。然后更改文件的所有权限。

chown -R mysql:mysql user

4.导入表空间

alter table user import tablespace;

相关参考

解析MySQL frm文件 mysql中ibd和frm文件

再见了,frm,MySQL 8.0全新字典缓存

MySQL innodb表使用表空间物理文件复制表

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值