zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

mysql快速导入5000万条数据过程记录(LOAD DATA INFILE方式)

mysql导入数据 快速 方式 过程 记录 Data
2023-09-27 14:29:21 时间
mysql快速导入5000万条数据过程记录(LOAD DATA INFILE方式) 首先将要导入的数据文件top5000W.txt放入到数据库数据目录/var/local/mysql/data/${db_name}/ 下,并确保导入用户拥有这个txt文件的权限,否则会报Error 13错误

mysql快速导入5000万条数据过程记录(LOAD DATA INFILE方式)

首先将要导入的数据文件top5000W.txt放入到数据库数据目录/var/local/mysql/data/${db_name}/ 下,并确保导入用户拥有这个txt文件的权限,否则会报Error 13错误



1.${table_name}换myisam,我们的场景对事务没啥要求,innodb引擎速度太慢了,原来导入12个小时都没导完


2.导入前修改参数和禁止索引更新
mysql SET SESSION BULK_INSERT_BUFFER_SIZE=256217728;
mysql SET SESSION MYISAM_SORT_BUFFER_SIZE=256217728;


mysql set global KEY_BUFFER_SIZE=256217728;
mysql alter table ${table_name} disable keys; 


mysql LOAD DATA INFILE "top5000W.txt" INTO TABLE ${table_name} FIELDS TERMINATED BY , LINES TERMINATED BY  \n (id,day,app_ids,id_1,id_2,id_3,combine_rate,active_nums,id_size)


3.导入后
mysql ALTER TABLE ${table_name} ENABLE KEYS; 


耗时统计:
LOAD DATA INFILE... 这步耗时8分钟左右
ALTER TABLE... 这步耗时12分钟左右




@dailidong@ 专注架构 外功修行,内功修神 CSDN博客:http://blog.csdn.net/odalidong