什么是Oracle的SQLT工具和SQLHC工具

0    144    1

Tags:

👉 本文共约1842个字,系统预计阅读时间或需7分钟。

SQLT简介

SQLT(SQLTXPLAIN)是Oracle Server Technologies Center of Expertise-ST CoE提供的一款工具,Mos文档1677588.1和1526574.1有非常详细的介绍。SQLT可以通过输入一个SQL语句然后输出一组诊断文件。这些文件通常用于诊断性能不佳或者产生错误结果的SQL语句。对于SQL语句的调优,SQLT需要DBA有一些专业的知识来分析诊断文件。对于许多问题来说推荐首先使用SQLHC(SQL Health Check,SQL性能健康检查脚本)来检查SQL,假如SQLHC不能解决再尝试使用SQLT。SQLT工具本身是免费的,不需要任何许可证(License)。

SQLT主要方法是连接到数据库,收集执行计划、CBO统计信息、Schema对象元数据、性能统计信息、配置参数和会影响正在分析的SQL性能的其它因素。这些方法会对有问题的SQL_ID产生一系列输出,包括一个HTML格式的“main”报表。

SQLT可以安装在UNIX、Linux或Windows平台,数据库版本支持Oracle 10.2及更高版本。详细安装过程可参考我的博客( http://blog.itpub.net/26736162/viewspace-2141558/ )。SQLT在安装的过程中会创建两个用户(SQLTXPLAIN和SQLTXADMIN)和一个角色(SQLT_USER_ROLE)。在使用SQLT提供的主要方法之前,须确保SQLT已经被正确安装,并且使用SQLT的用户被赋予了SQLT_USER_ROLE角色。如果在安装SQLT的过程中绕过了SQL*Net(即没有在安装期间没有指定连接符),那么在从远程客户端执行任何SQLT主要方法前,需要手动设置连接符参数。例如,连接使用“sqlplus lhr/lhr@orclasm”,那么在执行SQLT脚本之前就需要执行:“EXEC sqltxadmin.sqlt$a.set_sess_param('connect_identifier','@orclasm');”。

对于一个SQL语句,SQLT工具提供了7种主要方法来生成诊断详细信息:XTRACT,XECUTE,XTRXEC,XTRSBY,XPLAIN,XPREXT和XPREXC。其中,除了XPLAIN之外,其它方法都会处理绑定变量,并且会做Bind Peeking(绑定变量窥探),但是XPLAIN不会。这是因为XPLAIN是基于EXPLAIN PLAN FOR命令执行的,该命令不做Bind Peeking。因此,如果SQL语句含有绑定变量,那么请避免使用XPLAIN。除了XPLAIN的Bind Peeking限制外,所有的这7种主要方法都可以提供足够的诊断详细信息,对性能较差或产生错误结果集的SQL进行初步评估。如果该SQL仍位于内存中或者AWR(Automatic Workload Repository)中,那么推荐使用XTRACT或XTRXEC,其它情况请使用XECUTE。对于DG(Data Guard)或备用只读数据库,请使用XTRSBY。仅当其它方法都不可行时,再考虑使用XPLAIN。XPREXT和XPREXC是类似于XTRACT和XECUTE,但为了提高SQLT的性能它们禁了一些SQLT的特性。

XTRACT方法的使用如下所示:

其它方法类似,具体使用过程请参考我的博客。

SQLHC简介

对于SQLHC(SQL Health Check,SQL性能健康检查脚本)工具,Mos文档1626277.1有非常详细的介绍。SQLHC是Oracle Server Technologies Center of Expertise开发的一个工具。SQLHC用于检查单条SQL语句运行的环境,包括基于成本的优化器(CBO)的统计数据,用户对象的元数据定义,配置参数和其它可能影响到目标SQL性能的因素。SQLHC和SQLT工具一样,本身都是免费的,不需要任何许可证(License)。当对某一个SQL_ID运行SQLHC后,该脚本会生成一系列针对该SQL语句健康检查的一份HTML报告。

SQLHC会检查的内容包括:

① 待分析的单条SQL涉及的用户对象的CBO统计信息;

② CBO参数;

本人提供Oracle(OCP、OCM)、MySQL(OCP)、PostgreSQL(PGCA、PGCE、PGCM)等数据库的培训和考证业务,私聊QQ646634621或微信db_bao,谢谢!
什么是Oracle的SQLT工具和SQLHC工具后续精彩内容已被小麦苗无情隐藏,请输入验证码解锁本站所有文章
验证码:
请关注本站微信公众号,回复“小麦苗博客”,获取验证码。在微信里搜索“DB宝”或者“www_xmmup_com”或者微信扫描右侧二维码都可以关注本站微信公众号。

标签:

Avatar photo

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复

嘿,我是小麦,需要帮助随时找我哦
  • 18509239930
  • 个人微信

  • 麦老师QQ聊天
  • 个人邮箱
  • 点击加入QQ群
  • 个人微店

  • 回到顶部