通过分析SQL语句的执行计划优化SQL语句在数据库的日常维护中,调整个别性能较差的SQL语句是一项极富挑战性的工作
其中的关键在于如何得到SQL语句的执行计划和如何从SQL语句的执行计划中发现问题
总是想将日常经验的点点滴滴总结一下,但是直到最近才下定决心,总共花了3个周末时间,才将其整理成册,便于自己日常工作
现在将其发表出来希望能与更多的朋友分享
这篇文章主要介绍与SQL调整有关的内容,内容涉及多个方面:SQL语句执行的过程、Oracle(大型网站数据库平台)优化器,表之间的关联,如何得到SQL执行计划,如何分析执行计划等内容,从而由浅到深的方式了解SQL优化的过程,使大家逐步步入SQL调整之门
一:性能调整综述Oracle(大型网站数据库平台)数据库是高度可调的数据库产品
本章描述调整的过程和那些人员应与Oracle(大型网站数据库平台)服务器的调整有关,以及与调整相关联的操作系统硬件和软件
本章包括以下方面:谁来调整系统
什么时候调整
建立有效调整的目标在设计和开发时的调整调整产品系统监控产品系统谁来调整系统:为了有效地调整系统,若干类人员必须交换信息并牵涉到系统调整中,例如:应用设计人员必须传达应用系统的设计,使得每个人都清楚应用中的数据流动
应用开发人员必须传达他们选择的实现策略,使得语句调整的过程中能快速、容易地识别有问题的应用模块和可疑的SQL语句
数据库管理人员必须仔细地监控系统活动并提供它们的资料,使得异常的系统性能可被快速得识别和纠正
硬件/软件管理人员必须传达系统的硬件、软件配置并提供它们的资料,使得相关人员能有效地设计和管理系统
简而言之,与系统涉及的每个人都在调整过程中起某些作用,当上面提及的那些人员传达了系统的特性并提供了它们的资料,调整就能相对的容易和更快一些
不幸的是,事实上的结果是:数据库管理员对调整负有全部或主要的责任
但是,数据库管理