在达梦数据库中,也可以想oracle一样输出相应时间段的数据库awr分析报告,下面我们来看看在达梦数据库中生成AWR报告的具体方法。
开启awr系统包
达梦数据库awr报告需要依赖系统的DBMS_WORKLOAD_REPOSITORY包,具体包的使用可以参考《DM8系统包使用手册.pdf》,打开方法:
SP_INIT_AWR_SYS(1);
在使用 DBMS_WORKLOAD_REPOSITORY 包之前,需要提前调用系统过程并设置间隔时间。awr报告的间隔时间,默认为60分钟(有效范围为 [10, 525600])。
CALL DBMS_WORKLOAD_REPOSITORY.AWR_SET_INTERVAL(10);
设置成功后,可以使用 CREATE_SNAPSHOT 手动创建快照,也可以等待设置的间隔时间后系统自动创建快照,快照 id 从 1 开始递增:
手动创建快照:
DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT();
查看快照信息
查看创建的快照信息,包括快照 id:
SELECT * FROM SYS.WRM$_SNAPSHOT;
查看/输出html格式的awr报告
看 snapshot 的 id 在 1~2 范围内的 AWR 分析报告的带 html 格式的内容。然后复制到文本文件中,保存成 html 格式即可查看。
SELECT * FROM TABLE (DBMS_WORKLOAD_REPOSITORY.AWR_REPORT_HTML(1,2));
把 snapshot 的 id 在 1~2 范围内的 AWR 分析报告生成到d 盘 awr1.html 文件。
SYS.AWR_REPORT_HTML(1,2,'D:\','AWR1.HTML');
删除快照
通过 DMBS_WORKLOAD_REPOSITORY 包还可以对快照本身做增删改操作。(删除快照后快照id会继续编号生成,如果重新开启快照,则从1开始)
例 1 删除 id 在 22~32 之间的 snapshot。
CALL DBMS_WORKLOAD_REPOSITORY.DROP_SNAPSHOT_RANGE(22,32);
修改快照
修改 snapshot 的间隔时间为 30 分钟、保留时间为 1 天。
CALL DBMS_WORKLOAD_REPOSITORY.MODIFY_SNAPSHOT_SETTINGS(1440,30);
查询设置后快照参数。
SELECT * FROM SYS.WRM$_WR_CONTROL;
清理快照
清理全部 snapshot。
CALL DBMS_WORKLOAD_REPOSITORY.AWR_CLEAR_HISTORY();
更多资讯,欢迎到达梦技术社区:
https://eco.dameng.com