YashanDB 一键生成 AWR 报告

大家好,这里是公众号 DBA学习之路,分享一些学习国产数据库路上的知识和经验。

前言

最近在学习 YashanDB 数据库,免费考一下 YCP 证书,在学习过程中发现 YashanDB 也有 AWR 报告功能。于是,打开官方文档学习了一下,使用方式有点一言难尽,感觉开发有点不上心,花点时间封装一下应该不难吧。

介绍

DBMS_AWR 包提供了一组内置的存储过程/函数,用于实现性能报告相关功能。

  • 调用 DBMS_AWR 高级包下的所有子程序时,都需要以 SYS 用户连接数据库,否则报错。
  • DBMS_AWR 高级包不适用于分布式部署。

根据官方文档提供步骤演示生成 AWR 报告:

-- 创建一次快照
EXEC DBMS_AWR.CREATE_SNAPSHOT();
-- 继续创建一次快照
EXEC DBMS_AWR.CREATE_SNAPSHOT();

-- 从 WRM$_SNAPSHOT 表中查询最近的两次快照信息,包括数据库 ID、快照 ID、实例标识等信息
SELECT dbid,snap_id,instance_number FROM 
(SELECT dbid,snap_id,instance_number FROM wrm$_snapshot ORDER BY snap_id DESC)
WHERE ROWNUM<3;
       DBID     SNAP_ID INSTANCE_NUMBER
----------- ----------- ---------------
 2621752453         169               1
 2621752453         168               1

SET serveroutput ON

-- 3840305236 为数据库 ID,1 为数据库实例标识符,133 为起始快照 ID,134 为结束快照 ID
EXEC DBMS_AWR.AWR_REPORT(3840305236,1,133,134);

-- 重点来了,然后需要将以上命令输出的内容复制后保存到 html 中,再打开 html 查看

以上方式生成的报告,不说需要自己查询数据库相关信息以及快照信息,需要手动将输出内容复制保存为 HTML,才可以查看报告,不是很智能。

一键生成 AWR 报告

用惯了 Oracle 数据库觉得有点难受,所以我写了一键生成 YashanDB 的 AWR 报告脚本:

? yas_awrrpt.sh 脚本下载地址:https://www.modb.pro/doc/136047[1]

下载后可以直接阅读:

这样明显方便很多!

参考资料

[1]

https://www.modb.pro/doc/136047

- END -

请使用浏览器的分享功能分享到微信等