本周主要对MYSQL的查询优化模块有了大致的了解,并进行了一些实验。MYSQL优化器在接受到规范化的解析树后,将根据一些预定义的规则,从搜索空间里找到最优方案,其评价的单位为一个文件页面,即以随机访问页面数来评价。
但需要注意的是,优化器并不总是能选出最优方案,有时候,当搜索空间太大时,优化器会走某种捷径,但可能丢弃好的方案。你可以手动的设置某些提示语句(见前文)来对优化进行控制。另外,优化器无法理解人的思想,有时候可能需要对源代码进行修改,来适应需求!
下周学习任务(20~26):
1.阅读《高性能MYSQL》第五章 MYSQL高级特性,主要对查询缓存、触发器、游标、视图等特性进行了阐述。
2.阅读《深入理解MYSQL》第一和第二章,这两章主要介绍了一些历史背景、数据库系统知识以及MYSQL系统整体架构,通过对这两章的阅读,来对MYSQL源代码的学习进行大概的计划制定。