| 背景
需求来源
MySQL越来越流行,而且存储在MySQL的数据量也越来越大,单表数据达亿行已经是非常常见的现象,而这些表里面保存了大量的历史记录,严重影响SQL执行的效率。本文是针对客户需求,迁移MySQL Innodb大表分区中部分历史归档分区到其他实例或者其他库表,而且迁移过程尽量减少对业务环境的影响。
环境介绍
-
MySQL 5.7.21
-
Centos 7.4
-
innodb_file_per_table=1
| MySQL常用的Innodb迁移方法
-
MySQL Enterprise Backup(物理备份,类似于xtrabackup)
-
Copying Data Files (冷备份)
-
逻辑导出和导入(mysqldump,mydumper,mysqlpump)
-
可传输的表空间
| 迁移方案(可传输的表空间)
准备工作
操作步骤
查看需要迁移表(原表)结构
| 背景 需求来源 MySQL越来越流行,而且存储在MySQL的数据量也越来越大,单表数据达亿行已经是非常常见的现象,而这些表里面保存了大量的历史记录,严重影响SQL执行的效率。本文是针对客户需求,迁移MySQL Innodb大表分区中部分历史归档分区到其他实例或者其他库表,而且迁移过程尽量减少对业务环境的影响。 环境介绍
-
MySQL 5.7.21
-
Centos 7.4
-
innodb_file_per_table=1
| MySQL常用的Innodb迁移方法
-
MySQL Enterprise Backup(物理备份,类似于xtrabackup)
-
Copying Data Files (冷备份)
-
逻辑导出和导入(mysqldump,mydumper,mysqlpump)
-
可传输的表空间
| 迁移方案(可传输的表空间) 准备工作
操作步骤 查看需要迁移表(原表)结构
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
root@localhost : testdba 02:03:18> use test Database changed root@localhost : test 08:37:50> show create table sbtest2; + ---------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Table | Create Table | + ---------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | sbtest2 | CREATE TABLE `sbtest2` ( `id` int (10) DEFAULT NULL , ` name ` varchar (20) COLLATE utf8_bin DEFAULT NULL , ` date ` int (20) DEFAULT NULL , KEY `idx_fenqu` (` date `) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE =utf8_bin /*!50100 PARTITION BY RANGE ( date ) (PARTITION p0 VALUES LESS THAN (20161201) ENGINE = InnoDB, PARTITION p1 VALUES LESS THAN (20170101) ENGINE = InnoDB, PARTITION p2 VALUES LESS THAN (20170201) ENGINE = InnoDB, PARTITION p3 VALUES LESS THAN (20170301) ENGINE = InnoDB, PARTITION p4 VALUES LESS THAN (20170401) ENGINE = InnoDB, PARTITION p5 VALUES <
|
|