介绍Oracle的SQL调化健康检查脚本(SQLHC)

在这里插入图片描述

概述

Oracle提供了一个SQL调优健康检查脚本(SQLHC),用于检查需要优化的SQL的运行环境,生成报告以便帮助DBA找到SQL性能不佳的原因。SQLHC是SQLT的一个子集(我后续的文章会介绍SQLT),但SQLHC与SQLT不同,SQLHC不需要在数据库中安装任何代码即可完成收集信息的工作。
这个脚本执行下面几个方面的健康检查:

  • 与SQL语句相关的对象的统计信息
  • CBO参数
  • CBO系统统计信息
  • CBO数据字典统计信息
  • CBO动态性能视图统计信息

安装过程

从MOS(My Oracle Support )的Doc ID 11366133.1中下载“sqlhc.zip”文件到数据库服务器,然后将内容解压缩到适当的目录中:

$ unzip sqlhc.zip
Archive:  sqlhc.zipcreating: sqlhc/inflating: sqlhc/sqldx.sqlinflating: sqlhc/sqlhc.sqlinflating: sqlhc/sqlhc_pxhcdr.sqlinflating: sqlhc/sqlhc_pxhcdr_null.sqlinflating: sqlhc/sqlhc_sta.sqlinflating: sqlhc/sqlhc_tcb.sqlinflating: sqlhc/util_planx.sqlcreating: sqlhc/utl/inflating: sqlhc/utl/bde_chk_cbo.sqlinflating: sqlhc/utl/coe_gen_sql_patch.sqlinflating: sqlhc/utl/coe_gen_sql_profile.sqlinflating: sqlhc/utl/coe_load_sql_baseline.sqlinflating: sqlhc/utl/coe_load_sql_profile.sqlinflating: sqlhc/utl/coe_xfr_sql_profile.sqlinflating: sqlhc/utl/coe_xfr_sql_profile_remote.sqlinflating: sqlhc/utl/flush_cursor.sqlcreating: sqlhc/utl/mon/inflating: sqlhc/utl/mon/0_mon_readme.txtinflating: sqlhc/utl/mon/1_mon_repository.sqlinflating: sqlhc/utl/mon/2_mon_capture.sqlinflating: sqlhc/utl/mon/3_mon_reports.sqlinflating: sqlhc/utl/mvhcdr.sqlinflating: sqlhc/utl/planx.sqlinflating: sqlhc/utl/profiler.sqlinflating: sqlhc/utl/pxhcdr.sqlinflating: sqlhc/utl/readme.txtcreating: sqlhc/utl/spm/inflating: sqlhc/utl/spm/alter_spb.sqlinflating: sqlhc/utl/spm/coe_load_sql_baseline.sqlinflating: sqlhc/utl/spm/create_spb_from_awr.sqlinflating: sqlhc/utl/spm/create_spb_from_cur.sqlinflating: sqlhc/utl/spm/create_spb_from_sts.sqlinflating: sqlhc/utl/spm/create_sts_from_awr.sqlinflating: sqlhc/utl/spm/create_sts_from_cur.sqlinflating: sqlhc/utl/spm/display_awr.sqlinflating: sqlhc/utl/spm/display_cur.sqlinflating: sqlhc/utl/spm/display_spb.sqlinflating: sqlhc/utl/spm/display_sts.sqlinflating: sqlhc/utl/spm/drop_cur.sqlinflating: sqlhc/utl/spm/drop_spb.sqlinflating: sqlhc/utl/spm/drop_sts.sqlinflating: sqlhc/utl/spm/evolve_spb.sqlinflating: sqlhc/utl/spm/imp_and_unpack_spb.sqlinflating: sqlhc/utl/spm/imp_and_unpack_sts.sqlinflating: sqlhc/utl/spm/pack_and_exp_spb.sqlinflating: sqlhc/utl/spm/pack_and_exp_sts.sqlinflating: sqlhc/utl/spm/readme.txt

运行SQLHC脚本

要运行该脚本,请执行以下步骤:

  • 使用SYS账户或具有访问数据字典视图权限的用户连接到SQL*Plus。
  • 登录到相应的容器,否则您将无法访问对象。
  • 运行“sqlhc.sql”脚本。
    这里输入两个必需的参数:
  • Oracle Pack许可证(调优、诊断或无)[T|D|N]。SQLHC不需要许可证并且是免费的,但是如果安装了诊断包或调优包,SQLHC可以使用AWR报告中的信息,因此它会询问您的服务器是否已经被授权了诊断包或调优包。如果有,则输入“T”。
  • 要分析的SQL的有效SQL_ID。请不要输入PL/SQL包的SQL_ID,因为这样虽然不会引发错误,也不会产生有用的结果。
    例如:
SQL>@sqlhc/sqlhc.sql T 5mz8u3b34u9gw

这个脚本运行后,将在执行的同一目录中生成一个ZIP文件。

$ ll
total 208
-rw-r--r--. 1 oracle oinstall 212247 Mar 12 17:52 sqlhc_20240312_1751_5mz8u3b34u9gw.zip
$ unzip sqlhc_20240312_1751_5mz8u3b34u9gw.zip
Archive:  sqlhc_20240312_1751_5mz8u3b34u9gw.zipinflating: sqlhc_20240312_1751_5mz8u3b34u9gw_1_health_check.htmlinflating: sqlhc_20240312_1751_5mz8u3b34u9gw_2_diagnostics.htmlinflating: sqlhc_20240312_1751_5mz8u3b34u9gw_3_execution_plans.htmlinflating: sqlhc_20240312_1751_5mz8u3b34u9gw_4_sql_detail.htmlextracting: sqlhc_20240312_1751_5mz8u3b34u9gw_9_log.zipinflating: sqlhc_20240312_1751_5mz8u3b34u9gw_10_sql_tuning_advisor.outinflating: sqlhc_20240312_1751_5mz8u3b34u9gw_6_10053_trace_from_cursor.trcextracting: sqlhc_20240312_1751_5mz8u3b34u9gw_11_tcb.zipextracting: sqlhc_20240312_1751_5mz8u3b34u9gw_8_sqldx.zip

下面是生成的HTML文件的样本:
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/744175.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

迁移学习怎么用

如果想实现一个计算机视觉应用,而不想从零开始训练权重,比方从随机初始化开始训练,更快的方式是下载已经训练好权重的网络结构,把这个作为预训练,迁移到你感兴趣的新任务上。ImageNet、PASCAL等等数据库已经公开在线。…

C#,数值计算,希尔伯特矩阵(Hilbert Matrix)的算法与源代码

Hilbert, David (1862-1943) 1 希尔伯特(Hilbert) 德国数学家,在《几何学基础》中提出了第一套严格的几何公理(1899年)。他还证明了自己的系统是自洽的。他发明了一条简单的空间填充曲线,即埃里克魏斯汀的数学世界,即希尔伯特曲线,埃里克魏斯汀的数学世界,并证明了不…

C/C++程序设计实验报告2 | 循环结构实验

本文整理自博主学校大一(2021级)C/C专业课的课程实验报告,适合学弟妹或C语言初学者入门C语言学习、练习。 编译器:gcc 10.3.0 ---- 注: 1.虽然课程名为C程序设计,但实际上当时校内该课的内容大部分其实都是…

ElasticSearch学习篇10_Lucene数据存储之BKD动态磁盘树

前言 基础的数据结构如二叉树衍生的的平衡二叉搜索树通过左旋右旋调整树的平衡维护数据,靠着二分算法能满足一维度数据的logN时间复杂度的近似搜索。对于大规模多维度数据近似搜索,Lucene采用一种BKD结构,该结构能很好的空间利用率和性能。 …

查找jdk的安装

方式1:which或者where java which java -- linux where java --windows 方式2: echo 使用echo 打印配置的java home环境变量 echo $JAVA_HOME$ --linux echo %JAVA_HOME% --windows 方式3:使用ls -lrt -a :显示所有文件即目录…

沃通SSL证书证券行业应用案例

金融证券行业作为现代经济体系中的重要组成部分,其安全性直接关系到国家经济的稳定和广大投资者的利益。沃通SSL证书基于密码技术保护传输数据的机密性、完整性,通过权威身份认证确保服务器身份真实性,已持续为众多知名证券行业客户提供服务&…

微信小程序之vue按钮切换内容变化

效果图如下&#xff1b; 上代码 <template><view class"content"><view class"searchDiv"><view class"paytab"><view class"buttab" v-for"(t,index) in tabList" :key"index" clic…

Python小设计

1. 五个PPT上的界面打印【print、input函数】 &#xff08;1&#xff09;英雄商城登陆界面 print(英雄联盟商城登录界面 ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~1. 用户登录2. 新用户注册3. 退出系统 ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~…

【Numpy】基础学习:一文了解np.expand_dims的作用、用法

【Numpy】基础学习&#xff1a;一文了解np.expand_dims的作用、用法 &#x1f308; 个人主页&#xff1a;高斯小哥 &#x1f525; 高质量专栏&#xff1a;Matplotlib之旅&#xff1a;零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程&#x1f448; 希望…

MySQL用法---MySQL Workbench创建数据库和表

1. 连接数据库 打开软件&#xff0c;点击左下角卡片&#xff0c;输入设置的数据库密码&#xff0c;勾选单选框 2. 了解主页面的组成部分 3. 创建数据库 先点击工具栏的创建按钮 再输入数据库名称 点击 Apply 创建 4. 创建数据表 展开数据库&#xff0c;在Tables上右键&…

docker学习(十四)docker搭建私服

docker私服搭建&#xff0c;配置域名访问&#xff0c;设置访问密码 启动registry docker run -d \-p 5000:5000 \-v /opt/data/registry:/var/lib/registry \registrydocker pull hello-world docker tag hello-world 127.0.0.1:5000/hello-world docker push 127.0.0.1:5000…

【2024-完整版】python爬虫 批量查询自己所有CSDN文章的质量分:附整个实现流程

【2024】批量查询CSDN文章质量分 写在最前面一、分析获取步骤二、获取文章列表1. 前期准备2. 获取文章的接口3. 接口测试&#xff08;更新重点&#xff09; 三、查询质量分1. 前期准备2. 获取文章的接口3. 接口测试 四、python代码实现1. 分步实现2. 批量获取文章信息3. 从exce…

WPF —— Calendar日历控件详解

1&#xff1a; Calendar的简介 日历控件用于创建可视日历&#xff0c;让用户选择日期并在选择日期时触发事件。 DisplayMode 用来调整日历显示模式&#xff0c;分为Month、Year 和Decade 三种。如下是None 2&#xff1a;Calendar控件常用的属性 SelectionMode 选中日历的类…

深入理解指针——C语言

目录 1. 内存和地址 2. 指针变量和地址 3. 指针变量类型的意义 4. const修饰指针 5. 指针运算 6. 野指针 7. assert断言 8. 指针的使用和传址调用 9. 数组名的理解 10. 使用指针访问数组 11. 一维数组传参的本质 12. 冒泡排序 13. 二级指针 14. 指针数组 15. 指…

如何在Windows系统安装Node.js环境并制作html页面发布公网远程访问?

文章目录 前言1.安装Node.js环境2.创建node.js服务3. 访问node.js 服务4.内网穿透4.1 安装配置cpolar内网穿透4.2 创建隧道映射本地端口 5.固定公网地址 前言 Node.js 是能够在服务器端运行 JavaScript 的开放源代码、跨平台运行环境。Node.js 由 OpenJS Foundation&#xff0…

创建一个Django项目

安装python、pip、Django 找不到python命令&#xff0c;请将C:\Python33、C:\Python33\Lib、C:\Python33\libs三个地址加入环境变量。 get-pip.py下载&#xff1a;https://bootstrap.pypa.io/ django版本需要与python版本对应&#xff0c;并将C:\Python33\Scripts加入环境变…

CNC机加工引入复合机器人可以提高生产效率,降低成本

CNC加工企业在过去依赖大量的人工来完成生产线上的各项任务&#xff0c;包括CNC机床的上下料、物料搬运以及部分装配工作。然而&#xff0c;随着产能需求的不断增长和人工成本的持续上升&#xff0c;企业逐渐意识到自动化升级的重要性与迫切性。 面临的挑战与需求&#xff1a; …

Layer1 新星 Partisia Blockchain 撑起隐私保护伞,助你无忧加密交易!

信息纷繁芜杂、真假掺半的 Web3 行业&#xff0c;如何才能更快、更安全地实现快速交易&#xff1f;Partisia Blockchain 或许交出了一份满意的技术答卷。致力于隐私保护、互操作性和可持续创新的 Layer1 区块链新星&#xff0c;Partisia Blockchain 以安全公平标榜&#xff0c;…

VScode(Python)使用ssh远程开发(Linux系统树莓派)时,配置falke8和yapf总结避坑!最详细,一步到位!

写在前面&#xff1a;在Windows系统下使用VScode时可以很舒服的使用flake8和yapf&#xff0c;但是在ssh远程开发树莓派时&#xff0c;我却用不了&#xff0c;总是出现问题。当时我就开始了漫长的探索求知之路。中间也请教过许多大佬&#xff0c;但是他们就讲“能用不就行了&…

Jeff Bezos的投资正开始见效

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…