收集活动会话的历史信息、短暂的性能问题(比如只是持续几分钟的性能问题)、特定时段的数据库运行的性能状态信息,以及针对特定的模块、SQL_ID、SESSION_ID、service等来收集的性能状态信息。
背景信息
ASH每秒钟收集一次当前处于非空闲等待事件的、活动状态的session的信息,不收集空闲的会话。
操作步骤
步骤 1 以Oracle用户登录操作系统。
步骤 2 登录数据库。
:~> sqlplus / as sysdba;
步骤 3 生成ASH报表
1. 开始收集ASH报表。
SQL> @?/rdbms/admin/ashrpt.sql;
对某些系统,@特殊字符前面可能需要转义字符\,才能运行该命令。请运行命令:SQL> \@?/rdbms/admin/awrrpt.sql;
返回信息显示如下:
SQL> @?/rdbms/admin/ashrpt.sql;
Current Instance
~~~~~~~~~~~~~~~~
DB Id DB Name Inst Num Instance
----------- ------------ -------- ------------
4188289306 ORA11G 1 ora11g
Specify the Report Type
~~~~~~~~~~~~~~~~~~~~~~~
Enter 'html' for an HTML report, or 'text' for plain text
Defaults to 'html'
Enter value for report_type:
2. 输入报表的格式,有HTML格式、TEXT格式,默认HTML格式。
例如输入格式为html,返回信息如下:
Type Specified: html
Instances in this Workload Repository schema
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
DB Id Inst Num DB Name Instance Host
------------ -------- ------------ ------------ ------------
* 4188289306 1 ORA11G ora11g linux_lbi_02
Defaults to current database
Using database id: 4188289306
Defaults to current instance
Using instance number: 1
ASH Samples in this Workload Repository schema
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Oldest ASH sample available: 22-Jul-13 08:00:43 [ 11641 mins in the past]
Latest ASH sample available: 30-Jul-13 10:00:28 [ 1 mins in the past]
Specify the timeframe to generate the ASH report
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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 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
Enter value for begin_time: 07/29/2013 19:00:00
3. 按照提示的有效格式输入收集信息的开始时间。
有效格式有:
具体的日期和时间,如02/23/03 14:30:15。
当天的某个时间,如14:30:15或14:30。
相对时间,如距当前时间1个半小时输入-1:30,距当前时间15分钟输入-15。
例如输入时间07/29/2013 19:00:00,返回信息如下:
Report begin time specified: 07/29/2013 19:00:00
Enter duration in minutes starting from begin time:
Defaults to SYSDATE - begin_time
Press Enter to analyze till current time
Enter value for duration: 20
4. 输入需要收集信息的时间跨度,单位为分钟。
如上所示,收集信息的时间跨度为20分钟。
返回信息如下:
Report duration specified: 20
Using 29-Jul-13 19:00:00 as report begin time
Using 29-Jul-13 19:20:00 as report end time
……………….
Specify the Report Name
~~~~~~~~~~~~~~~~~~~~~~~
The default report file name is ashrpt_1_0729_1920.html. To use this name,
press <return> to continue, otherwise enter an alternative.
Enter value for report_name:
1. 输入报表名,默认以“ashrpt_instance_Id_日期_时间”命名,可以不输入。
如下所示为生成的ASH报表样例:
Report written to ashrpt_1_0729_1920.html
步骤 1 如果没指定目录和文件名,生成的ASH报表在当前目录,执行如下命令查看。
SQL> host;
:~> ls
返回信息显示如下:
ashrpt_1_0729_1920.html
----结束