性能测试中sql索引引起的性能问题

 

在性能测试中遇到性能瓶颈最的多地方就是数据库这块,而数据库出问题很多都是索引使用不当导致,根据以往遇到的索引问题做个简单的总结:

本次测试环境为xen的虚拟机配置如下:

操作系统 CentOS release 5.4
Cpu E5645  @ 2.40GH(四核)
内存 4G
磁盘大小 128.8 GB

特殊说明:

1.本次测试为了防止系统的缓存影响测试结果的准确性,所以每次测试之前都会执行下面的清除缓存的命令

sync && echo 3 >/proc/sys/vm/drop_caches && sleep 2 && echo 0 >/proc/sys/vm/drop_caches

2.并且个select语句都会添加SQL_NO_CACHE来消除mysql的query cahce对测试结果的影响

3.测试数据库量:150万行

一、索引的利弊

索引的好处:索引能够极大地提高数据检索的效率,让Query 执行得更快,也能够改善排序分组操作的性能,在进行排序分组操作中利用好索引,将会