首页 > 数据库技术 > 详细

MySQL count 优化

时间:2017-09-15 00:55:08      阅读:277      评论:0      收藏:0      [点我收藏+]

  从博客园开播后一直没有时间来更新,最近总是在忙一些项目的问题,终于告一段落,需要整理一下。

  这个项目是从oracle迁移到mysql平台,一主三从,做读写分离。迁移后压力测试,发现系统经常卡死。慢SQL都是select count(*) 之类的。

  单独执行select count(*) from tab ...在数据库中执行时间居然需要5s左右,这在oeacle数据库中是很快的。

  查看执行计划发现SQL居然走全表扫描。

  修改为select count(id) from tab ...后速度在秒内。修改这种SQL后,数据库不在堵塞。数据库环境MySQL 5.6.23

 

  后来测试count(*) count(1) count(column) 发现count(column)时间最快

 * 表示计算全部行数,包含NULL 和 count(1)一样

 count(column) 不包含NULL

 如果存在主键或唯一索引,建议使用主键和唯一索引替代*或1

MySQL count 优化

原文:http://www.cnblogs.com/audiclouddba/p/7523809.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!