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

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分钟左右

时间: 2024-11-15 23:49:07

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

spark从mysql数据库读取1000万条数据 运行速度很慢 如何优化

问题描述 spark从mysql数据库读取1000万条数据 运行速度很慢 如何优化 使用dataframe从mysql数据库中读取一张有1000万条记录的表 读取数据非常的慢 有什么办法能优化呢 求助啊 级 解决方案 http://book.51cto.com/art/201409/453045.htm 解决方案二: MySQL数据库运行状态数据的采集----------------------

mssql 30万条数据 搜索文本字段的各种方式对比

数据库: 30万条,有ID列但无主键,在要搜索的"分类"字段上建有非聚集索引 过程T-SQL: 复制代码 代码如下: /* 用户自定义函数:执行时间在1150-1200毫秒左右 CREATE FUNCTION [dbo].[gethl] (@types nvarchar(4)) RETURNS table AS return select 书名 from 图书三十万条 Where 分类 Like '%'+@types+'%' 存储过程: CREATE PROCEDURE [dbo].[

mssql 30万条数据 搜索文本字段的各种方式对比_MsSql

数据库: 30万条,有ID列但无主键,在要搜索的"分类"字段上建有非聚集索引 过程T-SQL: 复制代码 代码如下: /* 用户自定义函数:执行时间在1150-1200毫秒左右 CREATE FUNCTION [dbo].[gethl] (@types nvarchar(4)) RETURNS table AS return select 书名 from 图书三十万条 Where 分类 Like '%'+@types+'%' 存储过程: CREATE PROCEDURE [dbo].[

mysql load data infile 命令的数据导入

使用方式如下:  代码如下 复制代码 mysql>load data local infile "D:/ab.txt" into table mytbl(name,age);  如何load数据里面带反斜杠(backslash)"" 的数据 由于如果你没有指定FIELDS子句,则默认值为假设您写下如下语句时的值:  代码如下 复制代码 FIELDS TERMINATED BY 't' ENCLOSED BY " ESCAPED BY '\' 所以,如

探讨如何在有着1000万条数据的MS SQL SERVER数据库中实现快速的数据提取和数据分页

探讨如何在有着1000万条数据的MS SQL SERVER数据库中实现快速的数据提取和数据分页.以下代码说明了我们实例中数据库的一表的部分数据结构: CREATE TABLE [dbo].[TGongwen] (    --TGongwen是红头文件表名    [Gid] [int] IDENTITY (1, 1) NOT NULL ,--本表的id号,也是主键    [title] [varchar] (80) COLLATE Chinese_PRC_CI_AS NULL ,  --红头文件的

极限挑战—C#100万条数据导入SQL SERVER数据库仅用4秒 (附源码)

原文:极限挑战-C#100万条数据导入SQL SERVER数据库仅用4秒 (附源码)     实际工作中有时候需要把大量数据导入数据库,然后用于各种程序计算,本实验将使用5中方法完成这个过程,并详细记录各种方法所耗费的时间.     本实验中所用到工具为VS2008和SQL SERVER 2000.SQL SERVER 2008,分别使用5中方法将100万条数据导入SQL 2000与SQL 2008中,实验环境是DELL 2850双2.0GCPU,2G内存的服务器.感兴趣的朋友可以下载源代码自己

3分钟如何向MySQL数据库中插入100万条数据

一.编写测试案例向MySQL数据库中插入百万条数据.测试数据表建表脚本如下:use db_xk; drop table if exists tb_test2; create table tb_test2 ( id int primary key auto_increment, subject varchar(50) not null, description varchar(200) not null, teacher_id int(10) zerofill not null, student_

mysql 查询慢-mysql 近5万条数据的表 使用联表查询 出现服务器CPU占用过多

问题描述 mysql 近5万条数据的表 使用联表查询 出现服务器CPU占用过多 mysql 近5万条数据的表 使用联表查询 出现服务器CPU占用过多,贴大神代码求优化指点!!!!!有两张表分别为:lu_yccdd 和 lu_taizhang使用的联表查询代码:SELECT distinct(t.sc_time) sc_timecount(distinct(y.id)) totalcount(distinct(t.cdd_id)) tjjg(count(distinct(y.id))-count(

mysql 插入10万条数据 优化效率

问题描述 mysql 插入10万条数据 优化效率 public int addTypes(List<taobaoBean> babyList) { String sql = "insert into type (typeid,url) values (?,?) "; Connection conn = dbhelper.getConnection(driver,url,username,upwd); int result = 0; PreparedStatement stm