暂无图片
暂无图片
4
暂无图片
暂无图片
暂无图片

达梦数据库如何来配置并生成AWR报告

原创 始于脚下 2021-08-20
1549

AWR对于熟悉Oracle数据库的dba们来说,太熟悉了,达梦数据库也是能够生成AWR报告为dba提供详细的数据库性能分析数据。达梦数据库的AWR功能默认是关闭的,如果要使用AWR功能,需要相关配置来开启该功能,现在我们就一起来详细配置并生成达梦数据库的AWR报告。

1、检查数据库DBMS_WORKLOAD_REPOSITORY系统包的启用状态(0:未启用;1:已启用)以及awr快照信息和表空间信息

SQL> select sf_check_awr_sys;

 

行号       SF_CHECK_AWR_SYS

---------- ----------------

1          0

 

已用时间: 13.203(毫秒). 执行号:4.

SQL>

SQL> select * from sys.wrm$_snapshot;

select * from sys.wrm$_snapshot;

第1 行附近出现错误[-2106]:无效的表或视图名[WRM$_SNAPSHOT].

已用时间: 0.320(毫秒). 执行号:0.

SQL>

SQL> select tablespace_name from dba_tablespaces;

 

行号       TABLESPACE_NAME

---------- ---------------

1          SYSTEM

2          ROLL

3          TEMP

4          MAIN

5          BOOKSHOP

6          DMHR

7          DM_TBS

8          DM_DBA

9          HMAIN

 

9 rows got

 

已用时间: 11.702(毫秒). 执行号:8.
 

SQL>

2、创建数据库DBMS_WORKLOAD_REPOSITORY系统包,如果已创建,则可省略。


SQL> SP_INIT_AWR_SYS(1);

DMSQL 过程已成功完成

已用时间: 709.576(毫秒). 执行号:9.

SQL> select sf_check_awr_sys;

 

行号       SF_CHECK_AWR_SYS

---------- ----------------

1          1

 

已用时间: 2.890(毫秒). 执行号:10.

SQL> select tablespace_name from dba_tablespaces;

 

行号       TABLESPACE_NAME

---------- ---------------

1          SYSTEM

2          ROLL

3          TEMP

4          MAIN

5          BOOKSHOP

6          DMHR

7          DM_TBS

8          DM_DBA

9          SYSAUX

10         HMAIN

 

10 rows got

 

已用时间: 0.889(毫秒). 执行号:11.

SQL> select * from sys.wrm$_snapshot;

未选定行

 

已用时间: 0.891(毫秒). 执行号:12.

SQL>


注意:SP_INIT_AWR_SYS(1)为创建DBMS_WORKLOAD_REPOSITORY,SP_INIT_AWR_SYS(0)则为关闭。细心的读者应该已经发现,表空间查询结果多了sysaux表空间,达梦数据库在创建DBMS_WORKLOAD_REPOSITORY包时,默认会创建一个名为SYSAUX的表空间,对应的数据文件为SYSAWR.DBF,用来存放该包生成的快照数据。同样,该包被删除时,SYSAUX表空间及数据文件也响应的会删除。达梦MPP环境不支持该包。

3、开启AWR功能

SQL> DBMS_WORKLOAD_REPOSITORY.AWR_SET_INTERVAL(10);

DMSQL 过程已成功完成

已用时间: 5.632(毫秒). 执行号:13.

SQL>


注意:达梦数据库开启AWR功能,调用DBMS_WORKLOAD_REPOSITORY.AWR_SET_INTERVAL过程设置快照间隔时间即可,快照间隔时间的有效范围为【10,525600】,默认为60,单位为分钟。关闭快照间隔值设定0即可。

4、创建awr报告(可以手动创建,也可以等待,数据库会按照间隔时间自动创建)

SQL> DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT();

DMSQL 过程已成功完成

已用时间: 303.903(毫秒). 执行号:15.

SQL>

SQL> SELECT * FROM SYS.WRM$_SNAPSHOT;

 

行号       SNAP_ID     DBID        INSTANCE_NUMBER

---------- ----------- ----------- ---------------

           STARTUP_TIME

 

           -------------------------------------------------------------

-------------------------------

           BEGIN_INTERVAL_TIME

 

           -------------------------------------------------------------

-------------------------------

           END_INTERVAL_TIME

 

           -------------------------------------------------------------

-------------------------------

           SNAP_LEVEL

           -----------

1          1           NULL        1

           2021-08-20 09:48:23.000000

           NULL

           2021-08-20 17:07:31.000000

           1

 

 

已用时间: 0.691(毫秒). 执行号:16.

SQL>


可以看到,快照已经生成了。

5、生成awr报告,快照范围1-2,格式html

SQL> spool C:/dmdbms/dm_awr_1_2.html

SQL> SELECT * FROM TABLE (DBMS_WORKLOAD_REPOSITORY.AWR_REPORT_HTML(1,2));

SQL> spool off;


注意:达梦数据库的awr报告并不像Oracle数据库一样,直接生成html文件,而是已结果的方式展示(执行结果此处省略),需要手动复制结果到文本内,修改为html文件属性,然后在用浏览器打开,我这里直接用spool的方式,将内容直接写入C:/dmdbms/dm_awr_1_2.html文件中。

6、用浏览器打开生成的awr报告


达梦数据库的awr报告跟Oracle差不多,内容还是相当丰富的,此处截取awr报告头部信息仅做展示,感兴趣的小伙伴可以动手试试生成一个完整的达梦数据库awr报告。

最后修改时间:2021-08-20 17:35:41
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
1人已赞赏
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论