前言
最近在学习 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
下载后可以直接阅读:
这样明显方便很多!
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。