Oracle DB通过SQL优化管理性能(二)

2014-11-24 14:36:27 · 作者: · 浏览: 1
L 优化结果会在任务完成后即刻显示,也可以在以后通过“Advisor Central(指导中心)”页访问这些优化结果。此时还会显示建议的概要。可以复查和实施单个建议。选择语句并单击“View(查看)”。
使用SQL 优化指导:示例
可以通过执行以下步骤来调用SQL 优化指导:
1. 在“Database(数据库)”主页中,单击“Related Links(相关链接)”区域中的“Advisor Central(指导中心)”。
2. 单击“SQL Advisors (SQL 指导)”。此时将出现“SQL Tuning Advisor Links(SQL 优化指导链接)”页。
可以对以下任一来源运行该指导:
- Active SQL (活动SQL):分析当前活动的顶级 SQL 语句
- SQL Tuning Sets(SQL 优化集):分析用户提供的一组 SQL 语句
- Historical SQL (AWR) (以往的SQL (AWR)):分析AWR 快照捕获的SQL 语句
3. 选择“Active SQL (活动SQL )”。选择要分析的五分钟间隔,方法是将灰色框拖到目标时间段上。请选择要在选定期间内分析的一条或多条语句。

4. 单击“Run SQL Tuning Advisor(运行 SQL 优化指导)”。此时会出现“SQL Tuning Options(SQL 优化选项)”页,显示此时间间隔内的SQL 语句。提供任务的名称和
描述,选择“Comprehensive(综合)”作为范围,选择“Immediately(立即)”作为启动时间。单击“OK(确定)”。

5. 重新导航到“Advisor Central(指导中心)”页。指导任务的状态列于“Results (结果)”区域中此标题的下面。请一直等待,直至任务状态变为已完成。通过单击浏览
器中的“Refresh(刷新)”检查状态。选择任务并单击“View Result (查看结果)”。此时会显示“SQL Tuning Result (SQL 优化结果)”页。
6. 选择SQL 语句并单击“View Recommendations (查看建议)”。
重复的SQL


重复的SQL 语句是指只是所用的文字值或格式有所不同的语句。每个不同的语句在库高速缓存中都会有一个单独的游标。如果将文字替换为绑定变量,并统一格式,则重复的语句可以使用相同的游标。
通过在“Additional Monitoring Links(其他监视链接)”区域中单击“Performance(性能)”选项卡页上的“Duplicate SQL(重复的SQL )”,可以确定重复的SQL 语句。已确定为重复的SQL (不考虑格式或文字差异)会列在一起。这将有助于确定应用程序中的哪个SQL 可以合并,从而降低对库高速缓存的需求,提高语句的执行速度。
SQL 访问指导:概览

评估 SQL 的全部工作量, 并建议索引, 分区和实体化视图, 它们将改善 SQL 工作量的总体性能。

SQL 访问指导能够为给定工作量建议一组适当的实体化视图、实体化视图日志、分区和索引。了解和使用这些结构在优化SQL 时至关重要,因为这些结构在数据检索时能够极大地改善性能。
SQL 访问指导建议使用位图索引、基于函数的索引和B 树索引。位图索引可减少许多类型的即席查询的响应时间,并且相对于其它索引技术而言降低了存储要求。B 树索引在数据仓库中最为常用,用于为唯一关键字或接近唯一的关键字编制索引。
SQL 访问指导的另一个组件还提供了优化实体化视图的建议,使这些视图可以快速刷新并利用常规查询重写。
典型的SQL 访问指导会话

启动SQL 访问指导会话时,可以选择“Use Default Options(使用默认选项)”,以一组建议的预定义指导选项开始。此外,还可以选择“Inherit Options from a Task or Template(从任务或模板继承选项)”来启动任务,并使该任务继承一组由模板或任务定义的选项值。这些模板包括多个针对通用环境、OLTP 和数据仓库数据库设计的通用模板。你可以保存先前任务中的定制模板并在需要时重新使用。
单击“Continue (继续)”启动SQL 访问指导向导。
工作量来源

使用SQL 访问指导向导的“Workload Source(工作量源)”页提供已定义的工作量,以便访问指导可以生成建议。支持的工作量源包括:
Current and Recent SQL Activity(当前和最近的SQL 活动):使用高速缓存中的当前SQL 作为工作量
Use an existing SQL Tuning Set(使用现有的SQL 优化集):可以将先前创建的 SQL 优化集指定为工作量源
Create a Hypothetical Workload from the Following Schemas and Tables (从下列方案和表创建假想工作量):提供方案以便访问指导可以搜索维表并生成工作量
通过应用“Filter Options (过滤器选项)”部分中的可用过滤器,可以进一步缩小工作量的范围。使用这些选项,可以缩小出现在工作量中的SQL 语句的范围。指导将过滤器应用于工作量后,可以对重点部分进行优化。



可用的过滤器选项包括:
消耗资源最多的SQL 语句
用户、模块标识符或操作
建议选项

使用“Recommendations Options (建议选项)”页可以选择是否限制指导基于单个访问方法提出建议。从“Access Structures to Recommend(要推荐的访问结构)”部分选择“Indexes(索引)”、“Materialized Views (实体化视图)”、“Partitioning (分区)”或者上述各项的任意组合。可以选择“eva luation Only(仅评估)”,从而只评估现有的访问结构。在此模式下,指导不生成新的建议,而是就现有结构的使用提出意见。此项在跟踪当前索引、实体化视图的有效性和MV 日志使用率随时间变化方面非常有用。
可以使用“Advisor Mode (指导模式)”部分,以两种模式之一运行指导。这些模式会影响建议的质量和处理所需的时间。在“Comprehensive(综合)”模式中,指导将搜索候选的大型池,以便得到最高质量的建议。在“Limited(有限制)”模式中,指导执行速度很快,但是会限制候选建议。


可以选择“Advanced Options(高级选项)”来显示或隐藏选项,这些选项可用于设置空间限制、优化选项和默认存储位置。使用“Workload Categorization(工作量类别)”部分可以设置“Workload Volatility(工作量不稳定性)”和“Workload Scope(工作量范围)”选项。生成建议时,可以选择关注只读操作,或者考察被引用对象的不稳定性。你还可以选择“Partial Workload (部分工作量)”,其中不包括删除未使用的访问结构的建议;或者选择“Complete Workload(全部工作量)”,其中包括删除未使用的访问结构的建议。
使用“Space Restrictions(空间限制)”部分可指定硬性空间限制,强制指导仅使用不超过指定限制的总空间要求生成建议。
使用“Tuning Options(优化选项)”部分可指定相关选