InnoDB select性能拐点测试

2009-08-04 22:35:18  |   才被阅读:1,111 次  |   要评论?
分类: MySQL优化设计  |   发布: OurMySQL  |   来源:Taobao DBA Team
标签: , ,

在3000万数据的范围内,未出现所谓的性能拐点。初步猜想,前人的实验结果出现性能拐点,是因为内存耗尽,MySQL需要从磁盘上读取数据引起的。而这种性能拐点与MySQL本身的实现机制无关。

继续阅读全文...

MySQL优化之COUNT(*)效率

2008-09-30 11:38:04  |   才被阅读:4,144 次  |   才1条评论
分类: MySQL初级应用  |   发布: OurMySQL  |   来源:平凡的世界
标签: , , ,

优化总结:

1.任何情况下SELECT COUNT(*) FROM tablename是最优选择;
2.尽量减少SELECT COUNT(*) FROM tablename WHERE COL = ‘value’ 这种查询;
3.杜绝SELECT COUNT(COL) FROM tablename WHERE COL2 = ‘value’ 的出现。

继续阅读全文...

验证使用子查询提高MySQL分页效率

2008-09-25 19:11:00  |   才被阅读:1,676 次  |   要评论?
分类: MySQL初级应用  |   发布: OurMySQL  |   来源:老王
标签: , ,

BANGF348D58E49C9B8FC7701D2CBXIANGUO 很久以前,我写过一篇文章,说明了MySQL下的几种分页方式。这些天,陆续有几个人问过我其中的子查询方式,并对子查询分页的高效率表示质疑。今天我特意做了一个试验来验证这一点。

继续阅读全文...

Mysql数据库索引查询优化的分享

2008-09-25 19:05:39  |   才被阅读:1,349 次  |   要评论?
分类: MySQL初级应用  |   发布: OurMySQL  |   来源:Hi!Admin
标签: , ,

问题分析:

这张表大约容量30G,数据库服务器内存16G,无法一次载入。就是这个造成了问题。

这条SQL有两个条件,ID一到五十万和Program_id一到四千,因为program_id范围小得多,mysql选择它做为主要索引。

先通过索引文件找出了所有program_id在1到4000范围里所有的id,这个过程非常快。

接下来要通过这些id找出表里的记录,由于这些id是离散的,所以mysql对这个表的访问不是顺序读取。

而这个表又非常大,无法一次装入内存,所以每访问一条记录mysql都要重新在磁盘上定位并把附近的记录都载入内存,大量的IO操作导致了速度的下降。

继续阅读全文...

select语句where的作用

2008-09-23 23:17:22  |   才被阅读:1,454 次  |   要评论?
分类: MySQL初级应用  |   发布: yayu  |   来源:芽雨快跑
标签: ,

面对千万级的数据,如何更快的所用遍历数据,并根据自己的需要处理数据?where会起到多大的作用?

继续阅读全文...