MKTalkway
首页
注册

Oracle生成AWR报告操作步骤介绍

MiKing233
好吃懶做
2023-04-27 16:38:54

本篇介紹如何在 Oracle 資料庫上生成 AWR 報告, 並將其以HTML格式保存在磁盤中.

 

AWR全称Automatic Workload Repository, 自动负载信息库, Oracle 10g版本后推出的一种性能收集和分析工具, 提供了一个时间段内整个系统的报表数据. 通过AWR报告, 可以分析指定的时间段内数据库系统的性能.

 

AWR的由来:

10g之前的oracle:用户的连接将产生会话, 当前会话记录保存在v$session; 处于等待状态的会话会被复制一份放在v$session_wait. 当该连接断开后, 其原来的连接信息在v$sessionv$session_wait中就会被删除; oracle10g及之后保留下了v$session_wait中的这些信息, 并多了v$active_session_history(ASH)视图, 记录每个活动sessionv$session_wait中最近10次的等待事件.

ASH的采样数据是保存在内存中. 而分配给ASH的内存空间是有限的, 当所分配空间占满后, 旧的记录就会被覆盖掉; 而且数据库重启后, 所有的这些ASH信息都会消失. 这样, 对于长期检测oracle的性能是不可能的. Oracle10g, 提供了永久保留ASH信息的方法, 这就是AWR.

由于全部保存ASH中的信息是非常耗费时间和空间的, AWR采用的策略是:每小时对v$active_session_history进行采样一次, 并将信息保存到磁盘中, 并且保留7, 7天后旧的记录才会被覆盖. 这些采样信息被保存在视图wrh$_active_session_history. 而这个采样频率(1小时)和保留时间(7)是可以根据实际情况进行调整的, 这就给DBA们提供了更加有效的系统监测工具.

 

生成AWR報告:

首先我們需要確認需要生成AWR報告的實例SID

# 查看當前系統上運行的oracle資料庫實例

Command #ps -ef | grep smon

 

例如我們需要為實例 vmsfis 生成AWR報告

# 連接目標實例

Command #export ORACLE_SID=vmsfis

Command #sqlplus / as sysdba

 

登入成功后我們還需要確認我們登入了正確的資料庫實例

# 查詢當前實例的名稱和狀態

SQL >select name,open_mode from v$database;

 

確認無誤後執行下面的命令開始生成AWR報告

# 生成AWR報告

SQL >@?/rdbms/admin/awrrpt

您想要 HTML 报告还是纯文本报告? HTML 报告输入'html', 或为纯文本输入'text' 默认为'html'

在這裏需要選擇AWR報告生成的格式, 這裏我們輸入html來使用html格式生成

value >html

輸入完成後按下回車進行下一步設定

 

输入天数 (n) 将导致列出最近 (n) 天的快照。 在不指定数字的情况下按 <return> 会列出所有已完成的快照。

在這裏例如我們要為昨天下午3點到今天下午3點生成AWR報告, 我們就需要輸入2來列出昨天和今天兩天的快照 ID

value >2

輸入完成後按下回車進行下一步設定

 

指定开始和结束快照 ID, 首先指定開始的快照 ID

我們需要創建的AWR範圍從昨天下午3點到今天下午3, 今天是2023/4/18, 那麽開始的快照 ID我們就找”17 Apr 2023 15:00”

value >38882

接著指定結束的快照 ID, 結束的快照 ID就是”18 Apr 2023 15:00”前面的

value >38906

輸入完成後按下回車進行下一步設定

 

默认报告文件名为 awrrpt_1_38882_38906.html. 要使用此名称, 请按 <return> 继续, 否则输入替代名称.

這裏我們可以自定AWR報告的名稱, 例如

value >awr_vmsfis_20230418.html

輸入完成後按下回車進行下一步設定

 

等待AWR報告生成完成, 你將在/home/oracle路徑下看到你的AWR報告文件

 

至此, 你已經完成了一次AWR報告的生成, 參考以上步驟你也可以為你自己的資料庫實例生成AWR報告.

 

 

 

參考文章:

查拉图斯特拉面条: Oracle生成awr报告操作步骤介绍

https://www.cnblogs.com/silgen/p/16573602.html

 

遠離塵世の方舟: 自动工作负载库(Automatic Workload RepositoryAWR

https://www.cnblogs.com/rusking/p/4362346.html