大家在使用数据库的过程中,如果想对数据库在各个时点的参数进行监控,就需要用到数据库快照。数据库安装完成后,数据库快照功能默认是关闭的。数据库快照是一个只读的静态的数据库。DM快照功能是基于数据库实现的,每个快照是基于数据库的只读镜像。通过检索快照,可以获取源数据库在快照创建时间点的相关数据信息。本文就将给大家介绍如何生成数据库快照以及AWR报告。
注:本文演示环境:DM Database Server x64V7.1.6.43-Build(2018.01.29-88741)ENT
启用DM快照需要调用DBMS_WORKLOAD_REPOSITORY包
【注:DM MPP环境下不支持DBMS_WORKLOAD_REPOSITORY包】
--创建DBMS_WORKLOAD_REPOSITORY系统包。
SP_INIT_AWR_SYS(1);
--启用状态检测。
SELECT SF_CHECK_AWR_SYS;
--下面语句设置间隔为10分钟,也可以是其他值:
CALL DBMS_WORKLOAD_REPOSITORY.AWR_SET_INTERVAL(10);
--手动创建快照:
DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT();
这里我们可以多执行几遍试试,创建几个不同的快照。
--查看创建的快照信息,包括快照id:
SELECT * FROM SYS.WRM$_SNAPSHOT;
如果此时我们想知道,对应各个时点数据库的运行状况,我们可以利用DBMS_WORKLOAD_REPOSITORY包中的AWR_REPORT_HTML方法来生成HTML格式的AWR报表。
--查看 snapshot 的 id 在 1~3 范围内的 AWR 分析报告的带 html 格式的内容。
SELECT * FROM TABLE (DBMS_WORKLOAD_REPOSITORY.AWR_REPORT_HTML(1,3));
--把snapshot的id在1~3范围内的AWR分析报告生成到/home/dmdba目录下的awr1.html文件内。
SYS.AWR_REPORT_HTML(1,3,'/home/dmdba','awr1.html’); 【按实际路径修改】
生成的报表格式如下
以上关于DM7中数据库快照的一些用法了,如果大家想对这方面的内容有更深一步的了解,可以参考DM7安装目录下/doc/special/DM7系统包使用手册中DBMS_WORKLOAD_REPOSITORY包章节。