我现在用insert到mysql为什么速度只有30条/s?怎样提高插入的速度?着急啊
我现在是从jsp页面的10000个电话号码通过后台的一个for循环用insert到mysql为什么速度那样慢啊?每秒只有30条,我用的是tomcat容器。请大侠指教一下!...
我现在是从jsp页面的10000个电话号码通过后台的一个for循环用insert 到mysql 为什么速度那样慢啊?每秒只有30条,我用的是tomcat容器。请大侠指教一下!急
展开
2个回答
展开全部
mysql5的手册中提到,插入一条记录,所需的时间比例大概是:
连接:(3)
发送查询给服务器:(2)
分析查询:(2)
插入记录:(1x记录大小)
插入索引:(1x索引)
关闭:(1)
并且表的大小以logN(B树)的速度减慢索引的插入,因此提高插入速度的方法大概有以下7种:
一个insert语句包含多个value值;
使用insert delayed方法;
使用insert into ...values(select ...from),即select的同时执行insert;
使用load data infile;
先禁掉索引,插入后再创建索引;
写锁表,插入,解锁。原因是索引缓存区仅在所有insert语句完成后才刷新到磁盘上一次;
增加key_buffer_size值来扩大键高速缓冲区。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询