如何使insert插入速度提升?

来源:百度知道 编辑:UC知道 时间:2024/06/30 09:51:08
现在我做了个程序,就是专往数据库里插数据的,我现在一次插入20000条记录没问题,但插入50000条就不行了,有什么办法可以提升插入速度,现在我的insert是这样的values(),(),(),()......,请高手指点。
a5202003你的那种说法我试了,比我的这种差远了,插入的数据太少,我现在能在4个表中同时插入20000条语句,总共80000条,你那种方法才。。。。,我看了mysql文档,values()()。。比value是(),values()。。。快,你可以看一下insert的速度这一节。这速度还怎么能向上提升?我要的是在几秒钟内向几个表中分别插入100000条!

1、搞清楚你的数据库允许的最大并发连接数P
2、搞清楚你当前程序和你数据库之间带宽限制B
3、搞清楚你当前一条记录所用的数据量大小Q
4、用公式X = MIN(B/Q, P)得到允许并发线程数X
5、用并发线程去插入数据,速度最多会得到X倍提高

insert 一次不要插入大量数据。像我们程序默认都是20条执行一次插入。
你那个不是insert 效率差,而是太多的时候执行不过来。

建议你循环插入的时候,截取一下条数就好了。