mysql的update优化

lrenwang , 2010/06/22 09:38 , MySQL , 评论(0) , 阅读(1091) , Via 本站原创 | |
最近XiaoQiang童鞋写了一个更新数据的程序。在本地测试每次可以更新3W次。但放到生产环境下,却运行完1k也成问题。

这两天,我也在找这个问题的解决方法。除了那个程序以为,我们还有很多类似的更新程序。如果不能很好的保证mysql的数据更新效率.

通过debug显示,在本地更新的update数据,基本更新速度较快。每次更新一条数据平均的时间为0.0003秒。更生产环境的更新周期基本在0.03秒左右,比测试服务器慢了接近100倍。

所以基本断定由于等待update的时间过长。

mysql的update基本为先等待表空闲的时候才进行修改操作。由于更新的表基本上每一个页面都有进行访问被更新的表,所以被更新的表基本牌忙碌状态。导致基本上每次更新都需要,都需要等待。

面对这种情况,可以使用lock table和unlock table的命令。在每次批量更新同一张表之前,使用该组命令,可以减少每次update的等待时间。


转载:http://atim.cn/read.php/621.htm
发表评论

昵称

网址

电邮

打开HTML 打开UBB 打开表情 隐藏 记住我 [登入] [注册]