《Oracle AWR 与 ASH 性能报告深入解析》
一 数据库版本
LEO1@LEO1> select * from v$version;
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
PL/SQL Release 11.2.0.1.0 - Production
CORE 11.2.0.1.0 Production
TNS for Linux: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production
二 AWR 性能诊断报告
AWR:Automatic Workl oad Repository 自动工作负载信息库
通常在诊断数据库性能的时候分三个阶段
第一阶段:SQL 语句级性能优化
第二阶段:session 级性能优化,这时我们可以用 ASH 来做分析
第三阶段:DB 级性能优化,AWR 就是数据库层性能诊断报告,当我们无法判断数据库哪里性能出现
问题时我们可以做一个全身体检报告来找到我们瓶颈所在。
AWR 机制:通过对系统整体动态采样收集快照信息,存储在 SYSAUX 表空间,每小时采样一次,可以
保存 7 天,MMON 进程实施,快照分析后写入 DBA_HIST_%开头的数据字典。
AWR 信息来源:DBA_HIST_%开头的数据字典,请见下图
LEO1@LEO1> select table_name from dictionary where table_name like 'DBA_HIST_%';
TABLE_NAME
------------------------------------------------
DBA_HIST_ACTIVE_SESS_HISTORY
DBA_HIST_ASH_SNAPSHOT
DBA_HIST_BASELINE
DBA_HIST_BASELINE_DETAILS
DBA_HIST_BASELINE_METADATA
DBA_HIST_BASELINE_TEMPLATE
DBA_HIST_BG_EVENT_SUMMARY
DBA_HIST_BUFFERED_QUEUES
DBA_HIST_BUFFERED_SUBSCRIBERS
DBA_HIST_BUFFER_POOL_STAT
DBA_HIST_CLUSTER_INTERCON
DBA_HIST_COLORED_SQL
DBA_HIST_COMP_IOSTAT
DBA_HIST_CR_BLOCK_SERVER
DBA_HIST_CURRENT_BLOCK_SERVER
DBA_HIST_DATABASE_INSTANCE
DBA_HIST_DATAFILE
DBA_HIST_DB_CACHE_ADVICE
…………………………………………………
109 rows selected.
AWR 信息就是来自上面这些数据字典表,它是把这些表中数据进行汇总统计后生成 HTML or TXT 格式
LEO1@LEO1> select snap_id,name,value from DBA_HIST_SGA where snap_id>=173 and snap_id<=174;
SNAP_ID NAME VALUE