下面图老师小编跟大家分享一个简单易学的在Oracle 10g中如何获得索引建议教程,get新技能是需要行动的,喜欢的朋友赶紧收藏起来学习下吧!
【 tulaoshi.com - 编程语言 】
Oracle 10g的最优秀功能之一是顾问框架(Advisory Framework),它是一个优化顾问集合,可帮助您充分利用数据库。其中的一个顾问——SQL访问顾问(Access Advisor)——建议对模式中的索引和物化视图进行改变来提高性能。
但是,由于顾问框架(Advisory Framework)被一般化,以支持各种不同的顾问,因此导航DBMS_ADVISOR包中的所有存储过程和函数会十分繁琐。一个CREATE_TASK过程初始化一个新的优化任务,一个SET_TASK_PARAMETER过程修改默认的参数,CTEATE_SQLWKLD过程则建立一个负载对象等等。
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)Oracle 10g第二版在DBMS_ADVISOR包中增加了一个QUITE_TUNE过程。这个过程默认所需要的大多数参数来建立一个顾问,对界面进行调整。除建立一个负载对象(即进行优化的QSL语句表)外,它还直接向过程提交一个单独的SQL语句。
要使用QUITE_TUNE过程——或DBMS_ADVISOR包中的任何其它工具——用户必须具有顾问权限。另外,进行分析的用户必须对查询中引用的表至少拥有选择许可。然后,只要简单地调用过程就行。如列表A所示。
您可以在各种DBA_视图中查看运行结果。DBA_ADIVSOR_LOG列出您进行的任务和它生成建议的数目。然后可在DBA_ADVISOR_RECOMMENDATIONS视图中看到这些建议,单个的命令可在DBA_ADVISOR_ACTIONS视图中找到。
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)而且,您还可以让DBMS_ADVISOR生成执行建议行为所需的完整SQL脚本。GET_TASK_SCRIPT函数返回一个包含脚本的SLOB.
列表B显示了列表A的运行结果。因为WHERE子句使用的AMOUNT_SOLD栏没有编入索引,需要进行全面表扫描来处理这个语句。此外,它暗示这是一个位图索引,因为栏中的数据有许多重复的值。
来源:http://www.tulaoshi.com/n/20160219/1605648.html
看过《在Oracle 10g中如何获得索引建议》的人还看了以下文章 更多>>