关于mysql中数据插入时间过慢问题

目前往MySQL中一次性插入大约一万五千条数据,每条数据九百多列,总共需要十分钟左右,请问时间是否过慢,如果过慢该如何解决?

19个回答

如是普通PC级服务器(或是更好一点的消费级服务器),你每条数据平均占用时间为40MS,考虑到你的每条数据有900多列。这样的话,已经不慢了。

如想更快的话:
1、查看是否有索引,索引是以降低插入、删除、修改时的性能,提高查询的性能。所以索引会影响插入的性能,当然自增ID的主键不在此列。
2、查看能否优化数据结构,一条记录900多列过多了。是否有大量重复数据,如有则可以优化。
3、查看能否分表,一个表一次就要插入15000行记录,太多了。是否需要经常查询所有的这些数据,如不是则可以优化(如索引不可避免,则更应如此)。
4、使用事务,一次处理如500行左右。
5、考虑MYSQL本身的日志、备份机制是否可以关掉。(这一点我也不熟)
6、使用更好的服务器。

cyang421
cyang421 回复weixin_41986182: 查询不可避免,如果分表的话会不会影响查询效率,另外分表应该按照什么依据来分
2 年多之前 回复

如果有索引的话,建议利用分表操作。万级的数据必须要用垂直分表操作,这样每天插入的数据在不同的表中,索引也就在不同的表的索引中,减少插入带来的效率问题。

“ 网上购物系统”的主要功能模块

看你是如何操作的?如果通过工具导入,使用事务应该会快一些。

这个跟电脑有关,电脑装大的程序多了也会慢的

慢 数据更好的组织与存储 也就是数据结构更好一些有利于数据的存取

慢可能是因为计算机存储功能的大小有关也有可能跟数据存储的数据结构有关,建议可以释放电脑内存或者选择比较好的数据结构

qq_42163775
qq_42163775 有很多种情况可以影响到数据插入的快慢,如电脑本身的配置,用存储过程可以更快。
2 年多之前 回复
cyang421
cyang421 回复r0328p: 怎么界定是否是比较好的数据结构?
2 年多之前 回复
cyang421
cyang421 回复r0328p: 怎么界定是否是比较好的数据结构?
2 年多之前 回复
cyang421
cyang421 回复r0328p: 怎么界定是否是比较好的数据结构?
2 年多之前 回复

是什么需求一次要插入这么多数据 自增ID插入是比较快的 建议分成几个batch插入 每个batch几百条 异步执行
mysql可以进行分库分表 多机插入也可以解决

向有索引的表插入数据,是会越来越慢的,因为插入数据之后需要冲减索引。

向有索引的表插入数据,建议分成几个batch插入 每个batch几百条 异步执行

共19条数据 1 尾页
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐