《Oracle AWR与ASH性能报告深入解析101655.pdf》由会员分享,可在线阅读,更多相关《Oracle AWR与ASH性能报告深入解析101655.pdf(13页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、万两黄金容易得,知心一个也难求。曹雪芹良辰美景奈何天,便赏心乐事谁家院。则为你如花美眷,似水流年。汤显祖Oracle AWR与 ASH 性能报告深入解析 一 数据库版本 LEO1LEO1 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-Produ
2、ction NLSRTL Version 11.2.0.1.0-Production 二 AWR 性能诊断报告 AWR:Automatic Workload Repository 自动工作负载信息库 通常在诊断数据库性能的时候分三个阶段 第一阶段:SQL 语句级性能优化 第二阶段:session 级性能优化,这时我们可以用 ASH 来做分析 第三阶段:DB 级性能优化,AWR 就是数据库层性能诊断报告,当我们无法判断数据库哪里性能出现问题时我们可以做一个全身体检报告来找到我们瓶颈所在。AWR 机制:通过对系统整体动态采样收集快照信息,存储在 SYSAUX 表空间,每小时采样一次,可以保存 7
3、天,MMON 进程实施,快照分析后写入 DBA_HIST_%开头的数据字典。AWR 信息来源:DBA_HIST_%开头的数据字典,请见下图 LEO1LEO1 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_TEM
4、PLATE 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_A
5、DVICE 109 rows selected.AWR 信息就是来自上面这些数据字典表,它是把这些表中数据进行汇总统计后生成HTML or TXT 格式 LEO1LEO1 select snap_id,name,value from DBA_HIST_SGA where snap_id=173 and snap_id线-点:AWR-TOP 5-哪块资源有问题 三 产生一个 ASH 报告,并进行分析,给出最后的结论。ASH:Active Session History 活动会话历史记录 ASH 是一个会话级别的性能诊断报告,可以提供更细粒度的时间区间,可以精确到分钟,ASH 可以提供比 AWR
6、更详细的关于历史会话的信息,可以作为AWR 的补充。ASH 信息来源“v$active_session_history”保存当前会话的采集信息(一秒钟一次快照),视图容量满后可以被覆盖,可以从下面的数据字典中寻找 “dba_hist_active_sess_history”保持历史会话的采集信息 生成 ASH 报告 我尽一杯,与君发三愿:一愿世清平,二愿身强健,三愿临老头,数与君相见。白居易人不知而不愠,不亦君子乎?论语创建脚本目录:/u01/app/oracle/product/11.2.0/db_1/rdbms/admin/ashrpt.sql ASH 创建:sqlplus leo1/le
7、o1 创建脚本 oracleleonarding1$sqlplus leo1/leo1 /u01/app/oracle/product/11.2.0/db_1/rdbms/admin/ashrpt.sql Current Instance DB Id DB Name Inst Num Instance-1678393804 LEO1 1 LEO1 数据库 id 数据库名 实例数量 实例名 Specify the Report Type Enter html for an HTML report,or text for plain text 指定生成 ASH 报告类型 HTML or TXT D
8、efaults to html 默认是 HTML Enter value for report_type:我们直接回车生成 HTML 类型 Specify the timeframe to generate the ASH report 指定 ASH 报告采集时间区间 Enter begin time for report:-Valid input formats:-To specify absolute begin time:-MM/DD/YY HH24:MI:SS-Examples:02/23/03 14:30:15 样例-02/23 14:30:15-14:30:15-14:30-To
9、specify relative begin time:(start with-sign)-HH24:MI-Examples:-1:15 (SYSDATE-1 Hr 15 Mins)可以当前时间减去指定的分钟数-25 (SYSDATE-25 Mins)Defaults to-15 mins 默认减去 15 分钟 Enter value for begin_time:03/11/13 00:00:00 我指定开始时间是 2013 年 3 月 11 日零点 Report begin time specified:03/11/13 00:00:00 Enter duration in minutes
10、 starting from begin time:Defaults to SYSDATE-begin_time 默认是当前时间-03/11/13 00:00:00 Press Enter to analyze till current time Enter value for duration:现在是 03/11/13 00:35:00,我们按回车 Specify the Report Name 指定 ASH 报告名称,可以加创建到哪的路径 The default report file name is ashrpt_1_0311_0035.html.To use this name,默认名
11、称 press to continue,otherwise enter an alternative.Enter value for report_name:/home/oracle/ashrpt_leo1_0000_0035.html Report written to/home/oracle/ashrpt_leo1_0000_0035.html 报告已经创建到指定目录 LEO1LEO1 我们打开 ASH 报告 ashrpt_leo1_0000_0035.html 1.数据库概括信息 丈夫志四方,有事先悬弧,焉能钧三江,终年守菰蒲。顾炎武我尽一杯,与君发三愿:一愿世清平,二愿身强健,三愿临老
12、头,数与君相见。白居易 数据库名:LEO1 数据库 id:1678393804 实例名:LEO1 实例数:1 版本:11.2.0.1.0 RAC:NO 主机名: CPUs:2 核 SGA Size:490M 其中 data_buffer_cache 112M shared pool 184M ASH buffer size 4M ASH 采样开始时间:2013-03-11 00:00:00 ASH信息来源“v$active_session_history”ASH 采样结束时间:2013-03-11 00:35:00 间隔时间:36 分钟 采样数:416 平均活动会话:0.19 每个 CPU 执
13、行平均会话数:0.10 这么一看跟 AWR 上来阐述系统概括信息差不多 2.Top User Events 前 5 名等待事件 事件名 事件类型 占整体百分比 平均会话数 CPU 等待时间最长 CPU 37.26 0.07 这是我自己的实验环境,没有很多并发会话,所以活动会话数比较少 我尽一杯,与君发三愿:一愿世清平,二愿身强健,三愿临老头,数与君相见。白居易吾日三省乎吾身。为人谋而不忠乎?与朋友交而不信乎?传不习乎?论语 这是等待事件的详细信息 3.Top SQL 性能最差 SQL 排名 按等待事件排名 SQL 按数据处理方式排名 SQL 4.Top Sessions 按会话信息排名 一个会
14、话由:sid+serial#来唯一定位的 5.Top Objects&Files 按数据库对象和数据文件排名 人人好公,则天下太平;人人营私,则天下大乱。刘鹗海纳百川,有容乃大;壁立千仞,无欲则刚。林则徐看第二行就是我们经常使用的 LEO5 表,object_id=74268 因为我们刚刚做了 AWR 和 ASH 报告,用 sysaux 表空间较多,因此排第一位 小结:ASH 主要是针对会话级的一个体检报告,它可以追踪历史会话,从会话的角度分析数据库性能瓶颈,从而找到 SQL,优化 SQL 语句。四 分析说明 ASH 和 AWR 报告的使用场景 AWR:如果想全面了解数据库各个方面性能的话(包
15、括 硬件 软件 应用 数据库)可以使用 AWR 报告,实例级别诊断报告 ASH:如果想了解关于历史会话的信息可以使用 ASH 报告,会话级别诊断报告 场景功能对比 AWR VS ASH Instance wide data 实例级广泛数据 Yes Yes Time based data 基于时间统计数据 Yes Yes Counts/occurrence data 计数/统计数据 No Yes Analyze any time period 在任何时间段做分析 Yes No Detailed session level data 会话级详细数据 Yes No Individual Wait event data 个别等待事件 Yes No Sampled data 采集样本数据 Yes No Time based analysis 基于时间分析 Yes Yes AWR ASH session OLTP OLAP Repository Leonarding 2013.3.10 天津&spring 分享技术成就梦想 Blog: