2 qq 33310027 qq_33310027 于 2016.01.14 11:33 提问

用java向mysql中导入大量txt数据

用java向mysql中导入大量txt数据大约一百万条,怎样能用jdbc高效的存储,不用jdbc有其他方法也可以,重要的是,快图片说明求大神指点一二,尽量不要发百度连接啥的,我差不多都找过了,说的详细点,图片说明图片说明跪求

6个回答

q444916237
q444916237   2016.01.14 21:27
已采纳

批处理..
什么?批处理还不爽?
那就批处理这种语句:insert into XXX(a,b,c,d,d) values(1,1,1,1,1,),(2,2,2,2,2,2),(3,3,3,3,3)
还不爽?那就多线程去跑.
一百W数据不大.连本地库应该数秒就可以解决

qq_33310027
qq_33310027 我的可以每秒一万了,但是纯jdbc也就这么快了,不考虑多线程还有加快的办法么?
2 年多之前 回复
qiubabin
qiubabin   2016.01.14 11:42

大量的数据导入最好不要用jdbc程序导入,因为比较慢,最好的方式是先将txt数据处理成可直接导入的txt格式,然后直接使用mysql自带的load命令直接导入,那个速度绝对提升N个量级。如果格式不正确,也建议先用程序处理成格式正确的,然后命令导入。如果一定要求jdbc导入,那么一定要多线程批量提交操作比较快。

qq_33310027
qq_33310027 好吧!
2 年多之前 回复
qq_33310027
qq_33310027 如果必须要用呢?有什么便捷的方法么?
2 年多之前 回复
CSDNXIAON
CSDNXIAON   2016.01.14 11:35

java把txt文件中的数据导入mysql数据库
MYSQL导入数据到TXT
将txt数据导入mysql
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

l294265421
l294265421   2016.01.14 11:43

用多线程,这种io密集型应该会有很大提供

oyljerry
oyljerry   Ds   Rxr 2016.01.14 11:51

直接用mysqlimport工具。

qq_33310027
qq_33310027 必须通过java,因为txt是一部分数据
2 年多之前 回复
qq_23497379
qq_23497379   2016.01.14 11:57

哈哈 我刚好也要做这个东西 同样求教

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
java读取大文本直接插入Mysql数据库,10万条数据4秒执行完
java读取大文本直接插入数据库: 需求如下:  需要解析的文本文件是从考勤机中导出的1_attlog.dat,dat文件,根据项目需要,我只要2列数据,如下图 第一列在数据库对应的字段为 column3,第二列在数据库对应的字段为column13,测试的sql语句如下: -- ---------------------------- -- Table struc
java千万级数据txt文件导入数据库
最近在做项目的时候,有要把txt文件导入到数据库,txt文件有千万级,如果使用传统的读文件,写数据库,效率很慢。自己按照这种方式使用100万条数据的txt文件导入到oracle数据库,花费了二十多分钟。针对这种情况,可使用sqlLoader方式加载。 数据说明: 文件名:abc.txt 文件格式如下: 1111111|1|20171025|100|1|2|3| 111
超大批量向redis导入数据
日常中有时为了做实验需要向redis导入大量数据 下面提供一些思路: 1、循环导入 key的类型为string,下面是例子脚本 for((i=1;i do redis-cli -a "password" -n 0 -p 6379 set "k"$i "v"$i done 这样的坏处显而易见,每次都要建立连接,效率低下,不可取。 当然你导入几百几千个key倒
JDBC批量插入txt文件中的内容到数据库
一开始尝试了单条插入,13万条记录差不多2个半钟才能完全从文件中读取到数据库中,后来用了批量插入,用时29秒! 代码如下: import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.InputStreamReader; import jav
MySql 快速插入千万级大数据
在数据分析领域,数据库是我们的好帮手。不仅可以接受我们的查询时间,还可以在这基础上做进一步分析。所以,我们必然要在数据库插入数据。在实际应用中,我们经常遇到千万级,甚至更大的数据量。如果没有一个快速的插入方法,则会事倍功半,花费大量的时间。 在参加阿里的天池大数据算法竞赛中(流行音乐趋势预测),我遇到了这样的问题,在没有优化数据库查询及插入之前,我花了不少冤枉时间,没有优化之前,1500万条数据
MySQL批量导入Excel、txt数据
我想Excel是当今最大众化的批量数据管理软件了吧,所以我们会经常涉及到将Excel中数据导入到MySQL中的工作。网上有一些关于直接将Excel导入MySQL的教程,不知道是我安装的office不对还是MySQL不对,极少数情况下可以成功导入数据,所以感觉这种直接导入的方法会受
Linux下Mysql导入大量数据到一张表
可以利用shell脚本将切分好的文件分别导入,大文件可以利用split -l 50000 big_file small_file_ 进行切分为小文件。 #!/bin/bash HOSTNAME="127.0.0.1" PORT="3306" USERNAME="root" PASSWORD="root" DBNAME="test" TABLENAME="t_user" suffix
txt文档批量向MySQL导入数据
一、先利用下面的命令登陆mysql数据库 二、建立要导入的mysql数据表 三、利用命令行导入数据 结果如下: 开始时,导入命令行用的:load infile'/home/xleer/1.txt' into table onee fields terminated by ' ';导入结果为: 源txt文本的内容如下: 结果总是有一列导入的
如何使用SQLyog将大量数据导入mysql数据库
之前是通过SQLyog将excel文件保存为csv文件,然后导入mysql数据库,不过由于数据量大,建表语句写的很麻烦(先copy Excel横表的第一行(属性那一行),然后转置,到txt文件,写建表语句,加逗号),昨天用一天的时间琢磨这个问题,在前辈的指点下,发现这个能导入大量数据比较快捷的办法。 1.创建数据库,名字暂且叫hunanshencysj; 2,然后创建表结构,不过这里有
mysql 千万级数据的导入导出
最近应公司要求,在做数据库的导入导出。经查询每天的数据量在350W条左右。经过大量测试,感觉以下方法比较好   数据导出:SELECT INTO…OUTFILE 基本语法:SELECT  [INTO OUTFILE 'file_name'          [CHARACTER SET charset_name]          export_options        | INTO DUMP...