百万级MySQL的数据量,该如何快速的完成数据迁移?( 二 )


注意项

mysql安全项设置
在mysql执行load data infile和into outfile命令都需要在mysql开启了secure_file_priv选项 ,  可以通过show global variables like '%secure%';查看mysql是否开启了此选项 , 默认值Null标识不允许执行导入导出命令 。通过vim /etc/my.cnf修改mysql配置项 , 将secure_file_priv的值设置为空:
[mysqld]secure_file_priv=''则可通过命令导入导出数据文件 。
导入导出的数据表字段不对应
上面示例的从源数据库的dc_mp_fans表迁移数据到目标数据库的wxa_fans表 , 两个数据表的字段分别为:- dc_mp_fans
百万级MySQL的数据量,该如何快速的完成数据迁移?

文章插图
 
wxa_fans
百万级MySQL的数据量,该如何快速的完成数据迁移?

文章插图
 
在导入数据的时候 , 可以通过设置字段名来匹配目标字段的数据 , 可以通过@dummy丢弃掉不需要的目标字段数据 。
总结结合本次数据迁移经历 , 总结起来就是:小数据量可以使用mysqldump命令进行导入导出 , 这种方式简单便捷 。- 数据量较大 , 且有足够的迁移耐心时 , 可以选择自己写脚本 , 选择合适的并行方案迁移数据 , 这种方式编码成本较高 。- 数据量较大 , 且希望能在短时间内完成数据迁移时 , 可以通过mysql导入导出文件的方式来迁移 , 这种方式效率较高 。




推荐阅读