我现在用insert到mysql为什么速度只有30条/s?怎样提高插入的速度?着急啊

[复制链接]
查看11 | 回复2 | 2013-7-23 11:02:01 | 显示全部楼层 |阅读模式
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_bu...
回复

使用道具 举报

千问 | 2013-7-23 11:02:01 | 显示全部楼层
如果表是innodb类型的话,设置autocommit=0,insert完后commit.如果表是myisam还这么慢的话,建议把导入内容转为csv,然后执行load data infile 命令。...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行