Oracle ASH(Active Session History) 说明

2024-04-04 02:58

本文主要是介绍Oracle ASH(Active Session History) 说明,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 

       Oracle 10g中,推出了一些与DB 性能相关的功能,比如AWR, ADDM, STA, 已经这篇讲的ASHActive Session History)。

 

关于其他的几个功能说明,参考我之前的Blog

       Oracle AWR 介绍

       http://blog.csdn.net/tianlesoftware/archive/2009/10/16/4682300.aspx

 

       Oracle ADDM 自动诊断监视工具 介绍

       http://www.cndba.cn/Dave/article/1588

 

       如何用 SQL Tuning Advisor (STA) 优化SQL语句

       http://www.cndba.cn/cndba/Dave/article/1589

 

 

.  官网说明

       Performance tuning and problem diagnosis are the two most challenging and important management tasks that any database administrator performs. In line with the primary drive of the server manageability effort, the Autometic Database Diagnostic Monitor (ADDM) attempts to make, performing these two tasks, a lot simpler and easier. ADDM employs an iterative top-down approach and drives a rule-based expert system, to identify bottlenecks in a system and suggest relevant recommendations to tackle them.

       ASH acquires the information it requires to sample the active session’s activity from the database kernel’s session state objects. The quantity of information sampled by ASH could be quite voluminous, and therefore, ASH maintains a fixed sized circular buffer in the database System Global Area (SGA). The fixed sized circular buffer will be allocated during database start-up time. Since the information collected by the ASH infrastructure compliments the information present in SWRF snapshots, and can be used for drilldown purposes during problem diagnosis or performance tuning, the ASH data is also periodically flushed to disk.

       -- ASH 的数据也会定期的写入磁盘

 

       The flushing and purging policies of ASH, including the way ASH respects SWRF baselines, are completely tied with SWRF policies. Still, flushing the entire content of ASH on to disk could be too populous to be feasible, and therefore, only one out of every ten active session samples will be flushed to disk.

       -- 将整个ASH 内容频繁的写入磁盘不容易,所以只有1/10active session 数据写入磁盘

 

       In addition to ADDM using the ASH to achieve its objectives, the ASH contents will also be displayed in the Oracle Enterprise Manager (EM) / Mozart [OEM-SWRF] performance screen. The graph that summarizes the ASH contents in the EM performance screen will be a stacked graph showing the distribution of the elapsed database time onto various wait times and CPU time, during every minute. The ASH infrastructure will provide a single V$ view (V$ACTIVE_SESSION_HISTORY), to view the in-memory contents of ASH.

       --可以通过V$ACTIVE_SESSION_HISTORY 视图查看内存中ASH 的信息

 

       The ASH infrastructure will also provide a way to dump the in-memory contents of its circular buffer onto an external file in a human readable format. The ASH dump file can be transported to another system, imported onto a user table, and analyzed using the ADDM in that system.

       -- 也可以将内存中的ASM 数据dump 到外部文件,并转移到其他系统进行分析。

 

 

ASH Memory Size

==============
Size of ASH Circular Buffer = Max [Min [ #CPUs * 2 MB, 5% of Shared Pool Size, 30MB ], 1MB ]

--最小1M,最大30M

 

Catagoreising the Active Session

============================
i. Present inside a user call
ii. Not a recursive session
iii. Not waiting for the ‘IDLE’ wait-event
iv. If it is a background process, not waiting for its usual timer-event
v. If it is a parallel slave, not waiting for the PX_IDLE wait event.

So will not see any info if a process is waitting for "SQL*Net message from client".

 

 

online offline 分析示例

 

Let start with ONLINE analysis
========================
I have open two session. first one (SID 16) is running the DML like

 

SQL> delete test where rowid='AAAKB9AAEAAAAAiAAA';

 

From second session (SID 15) run the same DML, and it is obvious that second session will wait for first session to commit.

 

Lets check the info in V$ACTIVE_SESSION_HISTORY.
------------------------------------------------
Run the following script.
SQL> select SESSION_ID,NAME,P1,P2,P3,WAIT_TIME,CURRENT_OBJ#,CURRENT_FILE#,CURRENT_BLOCK# from v$active_session_history ash, v$event_name enm where ash.event#=enm.event# and SESSION_ID=&SID and SAMPLE_TIME>=(sysdate-&minute/(24*60));

 

Input is

Enter value for sid: 15
Enter value for minute: 1 /* How many minutes activity you want to see */

 

output is 59 lines as it is wiatting more than 1 minute more than 1 minute

 

SESSION_ID NAME P1 P2 P3 WAIT_TIME CURRENT_OBJ# CURRENT_FILE# CURRENT_BLOCK#
---------- ------------------------------ ---------- ---------- ---------- ---------- ------------ ------------- --------------
15 enq: TX - row lock contention 1415053318 589825 143 0 41085 4 34
15 enq: TX - row lock contention 1415053318 589825 143 0 41085 4 34
15 enq: TX - row lock contention 1415053318 589825 143 0 41085 4 34
continue .............
15 enq: TX - row lock contention 1415053318 589825 143 0 41085 4 34
15 enq: TX - row lock contention 1415053318 589825 143 0 41085 4 34
15 enq: TX - row lock contention 1415053318 589825 143 0 41085 4 34

So you have object details with problem info.

 

 

Lets do the OFFLINE analysis of ASH
==============================

So if your are not able to find the problem online, you can dump the ASH to a trace.

 

Command would be like below: where level means minute. lets dump for 10 minutes history

1. SQL> alter session set events 'immediate trace name ashdump level 10';
or

2. SQL> alter system set events 'immediate trace name ashdump level 10';

or

3. SQL> oradebug setmypid

SQL> oradebug dump ashdump 10;

So you will get the trace file in udump.

Output of trace would be like

<<>>
2594829169,1,161390,"07-18-2003 16:05:21.098717000",13,1,0,"",65535,0,0,2,0,0,0,4294967295,0,0,2,35,100,0,0,10

05855,0,"oracle@usunrat21 (MMNL)","","",""

 

       Oracle has provide an utility under $ORACLE_HOME/rdbms/demo (Location may change), by which you can upload the ASH trace dump to a database table and do the analysis.


Please see the following Note
Note 555303.1 ashdump* scripts and post-load processing of MMNL traces
for the scripts.

 

Script Details
============

1. "ashdump_loader" -> Main script to run with one argument. Argument is the the name of tracefile. (available in 10g only)
2. "ashdump_table.sql" -> It would be called by the main script to create the table

called SYSTEM.ACTIVE_SESSION_HISTORY_DUMP.

3. "ashdump_sqlldr.ctl" -> It is the third script called by main script to load the trace into

table called SYSTEM.ACTIVE_SESSION_HISTORY_DUMP.

 

注意:You must use the same oracle version to compare the OFFLINE trace with the other view.

 

.  ASH 说明

       ASHV$SESSION为基础,每秒采样一次,记录活动会话等待的事件。不活动的会话不会采样,采样工作由新引入的后台进程MMNL来完成。

       ASH buffers 的最小值为1MB,最大值不超过30MB。内存中记录数据。期望值是记录一小时的内容。

 

ASH报告生成脚本:@?/rdbms/admin/ashrpt.sql

 

       ASH内存记录数据始终是有限的,为了保存历史数据,引入了自动负载信息库(Automatic Workload Repository ,AWR) 由后台进程MMON完成。ASH信息同样被采集写出到AWR负载库中。由于内存不是足够的,所以MMNL进程在ASH写满后会将信息写出到AWR负载库中。ASH全部写出是不可接受的,所以一般只写入收集的10%的数据量,而且使用direct-path insert完成,尽量减少日志的生成,从而最小化数据库性能影响。

 

       内存中的ASH 信息可以通过V$ACTIVE_SESSION_HISTORY查询,而      写出到AWR负载库的ASH信息,可以通过AWR的基础表wrh$active_session_hist查询,wrh$active_session_hist是一个分区表,Oracle会自动进行数据清理。

 

 

       一般来说,我们在监控数据库时,如果是当前正在发生的问题,我们可以通过v$session+v$sqlarea来找出性能最差的SQL语句。如果在一个小时以内发生的我们可以通过生成ASH报告来找出SQL。如果是1小时以上或几天我们可以通过AWR报告来找出几小时,几天以来最影响系统的SQL语句。ADDM报告基于AWR库,默认可以保存30天的ADDM报告。

 

相关查询试图:

v$session                              (当前正在发生)

v$session_wait              (当前正在发生)

v$session_wait_history        (会话最近的10次等待事件)

v$active_session_history      (内存中的ASH采集信息,理论为1小时)

wrh$_active_session_history   (写入AWR库中的ASH信息,理论为1小时以上)

dba_hist_active_sess_history   (根据wrh$_active_session_history生成的视图)

 

 

.  ASH 报告生成示例

       ASH组件以v$active_session_history视图为基础,生成ASH报表,ASH报表与statspack类似,可以提供以下信息:

 

Top User Events

Top Background Events

Top Event P1/P2/P3 Values

Top Service/Module

Top Client IDs

Top SQL Command Types

Top SQL using literals

Top Blocking Sessions

Top DB Objects

Top DB Files

Top Latches

Activity Over Time

 

       报表间隔时间可以精确到分钟,因而ASH可以提供比STATSPACKAWR更详细的关于历史会话的信息,可以作为statspackawr的补充。ASH报告通过@$ORACLE_HOME/rdbms/admin/ashrpt.sql脚本生成,包括hmtltext两种格式。

 

SYS@anqing1(rac1)> @?/rdbms/admin/ashrpt.sql;

-- 调用脚本

 

Current Instance

~~~~~~~~~~~~~~~~

 

   DB Id    DB Name      Inst Num Instance

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

  715014091 ANQING              1 anqing1

 

 

Specify the Report Type

~~~~~~~~~~~~~~~~~~~~~~~

Enter 'html' for an HTML report, or 'text' for plain text

Defaults to 'html'

Enter value for report_type: text

-- 选择生成的ASH 报告类型,是text 还是html

Type Specified:  text

 

 

Instances in this Workload Repository schema

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 

   DB Id     Inst Num DB Name      Instance     Host

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

  715014091         1 ANQING       anqing       singledb

* 715014091         1 ANQING       anqing1      rac1

  715014091         2 ANQING       anqing2      rac2

 

Defaults to current database

 

Using database id: 715014091

 

Defaults to current instance

 

Using instance number: 1

 

 

ASH Samples in this Workload Repository schema

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 

Oldest ASH sample available:  19-May-11 14:49:59   [  10585 mins in the past]

Latest ASH sample available:  26-May-11 23:14:34   [      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: 8:00

-- 输入ASH 开始的时间,时间格式上面的示例有说明

Report begin time specified: 8: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:

-- 输入ASH 结束时间,默认是SYSDATE - begin_time

Report duration specified:

 

Using 26-May-11 08:00:00 as report begin time

Using 26-May-11 23:15:12 as report end time

 

 

Specify Slot Width (using ashrpti.sql) for 'Activity Over Time' section

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 

-- Explanation:

--   In the 'Activity Over Time' section of the ASH report,

--   the analysis period is divided into smaller slots

--   and top wait events are reported in each of those slots.

 

-- Default:

--   The analysis period will be automatically split upto 10 slots

--   complying to a minimum slot width of

--     1 minute,  if the source is V$ACTIVE_SESSION_HISTORY or

--     5 minutes, if the source is DBA_HIST_ACTIVE_SESS_HISTORY.

 

 

Specify Slot Width in seconds to use in the 'Activity Over Time' section:

Defaults to a value as explained above:

Slot Width specified:

 

 

Specify Report Targets (using ashrpti.sql) to generate the ASH report

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 

-- Explanation:

--   ASH Report can accept "Report Targets",

--   like a particular SQL statement, or a particular SESSION,

--   to generate the report on. If one or more report targets are

--   specified, then the data used to generate the report will only be

--   the ASH samples that pertain to ALL the specified report targets.

 

-- Default:

--   If none of the report targets are specified,

--   then the target defaults to all activity in the database instance.

 

 

Specify SESSION_ID (eg: from V$SESSION.SID) report target:

Defaults to NULL:

SESSION report target specified:

 

 

Specify SQL_ID (eg: from V$SQL.SQL_ID) report target:

Defaults to NULL: (% and _ wildcards allowed)

SQL report target specified:

 

 

Specify WATI_CLASS name (eg: from V$EVENT_NAME.WAIT_CLASS) report target:

[Enter 'CPU' to investigate CPU usage]

Defaults to NULL: (% and _ wildcards allowed)

WAIT_CLASS report target specified:

 

 

Specify SERVICE_HASH (eg: from V$ACTIVE_SERVICES.NAME_HASH) report target:

Defaults to NULL:

SERVICE report target specified:

 

 

Specify MODULE name (eg: from V$SESSION.MODULE) report target:

Defaults to NULL: (% and _ wildcards allowed)

MODULE report target specified:

 

 

Specify ACTION name (eg: from V$SESSION.ACTION) report target:

Defaults to NULL: (% and _ wildcards allowed)

ACTION report target specified:

 

 

Specify CLIENT_ID (eg: from V$SESSION.CLIENT_IDENTIFIER) report target:

Defaults to NULL: (% and _ wildcards allowed)

CLIENT_ID report target specified:

 

 

Specify PLSQL_ENTRY name (eg: "SYS.DBMS_LOB.*") report target:

Defaults to NULL: (% and _ wildcards allowed)

PLSQL_ENTRY report target specified:

 

Specify the Report Name

~~~~~~~~~~~~~~~~~~~~~~~

The default report file name is ashrpt_1_0526_2315.txt.  To use this name,

press <return> to continue, otherwise enter an alternative.

Enter value for report_name: /u01/daveash.txt

-- 输入ASH 报告的名称,可以指定生成的目录,默认情况是当前登陆sqlplus的目录。 这里的扩展最好加上,如果不加扩展名,扩展名会变成lst. 但不影响数据。

 

Using the report name /u01/daveash.txt

 

Summary of All User Input

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

Format         : TEXT

DB Id          : 715014091

Inst num       : 1

Begin time     : 26-May-11 08:00:00

End time       : 26-May-11 23:15:12

Slot width     : Default

Report targets : 0

Report name    : /u01/daveash

 

 

ASH Report For ANQING/anqing1

 

DB Name         DB Id    Instance     Inst Num Release     RAC Host

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

ANQING         715014091 anqing1             1 10.2.0.4.0  YES rac1

 

CPUs           SGA Size       Buffer Cache        Shared Pool    ASH Buffer Size

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

   1        272M (100%)       144M (52.9%)        96M (35.3%)        2.0M (0.7%)

 

 

          Analysis Begin Time:   26-May-11 08:00:00

            Analysis End Time:   26-May-11 23:15:12

                 Elapsed Time:       915.2 (mins)

                 Sample Count:         795

      Average Active Sessions:        0.01

  Avg. Active Session per CPU:        0.01

                Report Target:   None specified

 

Top User Events               DB/Inst: ANQING/anqing1  (May 26 08:00 to 23:15)

 

                                                               Avg Active

Event                               Event Class     % Activity   Sessions

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

latch free                          Other                 8.55       0.00

CPU + Wait for CPU                  CPU                   7.17       0.00

log file sync                       Commit                2.26       0.00

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

 

Top Background Events         DB/Inst: ANQING/anqing1  (May 26 08:00 to 23:15)

 

                                                               Avg Active

Event                               Event Class     % Activity   Sessions

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

control file sequential read        System I/O           36.73       0.01

control file parallel write         System I/O           28.30       0.00

log file parallel write             System I/O            4.91       0.00

CPU + Wait for CPU                  CPU                   3.40       0.00

db file parallel write              System I/O            3.40       0.00

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

 

Top Event P1/P2/P3 Values     DB/Inst: ANQING/anqing1  (May 26 08:00 to 23:15)

 

Event                          % Event  P1 Value, P2 Value, P3 Value % Activity

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

Parameter 1                Parameter 2                Parameter 3

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

control file sequential read     36.73                  "0","11","1"      21.01

file#                      block#                     blocks

 

                                                         "0","3","1"      11.45

 

 

                                                         "0","4","1"       1.64

 

 

control file parallel write      28.30                   "2","3","2"      28.30

files                      block#                     requests

 

latch free                        8.68         "817412680","389","0"       8.55

address                    number                     tries

 

log file parallel write           4.91                   "2","2","2"       1.13

files                      blocks                     requests

 

db file parallel write            3.40          "1","0","2147483647"       3.40

requests                   interrupt                  timeout

 

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

 

Top Service/Module            DB/Inst: ANQING/anqing1  (May 26 08:00 to 23:15)

 

Service        Module                   % Activity Action               % Action

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

SYS$BACKGROUND UNNAMED                       80.25 UNNAMED                 80.25

SYS$USERS      UNNAMED                        9.43 UNNAMED                  9.43

               DBMS_SCHEDULER                 5.16 MYJOB                    4.91

                                              1.89                          1.89

               racgimon@rac1 (TNS V1-V3       1.01 UNNAMED                  1.01

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

 

Top Client IDs                DB/Inst: ANQING/anqing1  (May 26 08:00 to 23:15)

 

                  No data exists for this section of the report.

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

 

Top SQL Command Types         DB/Inst: ANQING/anqing1  (May 26 08:00 to 23:15)

-> 'Distinct SQLIDs' is the count of the distinct number of SQLIDs

      with the given SQL Command Type found over all the ASH samples

      in the analysis period

 

                                           Distinct            Avg Active

SQL Command Type                             SQLIDs % Activity   Sessions

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

SELECT                                            7       1.38       0.00

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

 

 

Top SQL Statements            DB/Inst: ANQING/anqing1  (May 26 08:00 to 23:15)

 

       SQL ID    Planhash % Activity Event                             % Event

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

4gd6b1r53yt88         N/A       1.38 PX Deq: reap credit                  0.75

** SQL Text Not Available **

 

531sc6y5xdd41         N/A       1.01 SQL*Net break/reset to client        0.63

** SQL Text Not Available **

 

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

 

Top SQL using literals        DB/Inst: ANQING/anqing1  (May 26 08:00 to 23:15)

 

                  No data exists for this section of the report.

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

 

Top PL/SQL Procedures         DB/Inst: ANQING/anqing1  (May 26 08:00 to 23:15)

 

                  No data exists for this section of the report.

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

 

 

Top Sessions                  DB/Inst: ANQING/anqing1  (May 26 08:00 to 23:15)

-> '# Samples Active' shows the number of ASH samples in which the session

      was found waiting for that particular event. The percentage shown

      in this column is calculated with respect to wall clock time

      and not total database activity.

-> 'XIDs' shows the number of distinct transaction IDs sampled in ASH

      when the session was waiting for that particular event

-> For sessions running Parallel Queries, this section will NOT aggregate

      the PQ slave activity into the session issuing the PQ. Refer to

      the 'Top Sessions running PQs' section for such statistics.

 

   Sid, Serial# % Activity Event                             % Event

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

User                 Program                          # Samples Active     XIDs

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

      160,    1      39.87 control file parallel write         28.30

SYS                  oracle@rac1 (CKPT)                 225/55K [  0%]        0

 

                           control file sequential read        11.45

                                                         91/55K [  0%]        0

 

      167,    1      24.91 control file sequential read        22.64

SYS                  oracle@rac1 (LMON)                 180/55K [  0%]        0

 

                           CPU + Wait for CPU                   1.51

                                                         12/55K [  0%]        0

 

      148,23561       8.55 latch free                           8.55

SYS                  oracle@rac1 (J002)                  68/55K [  0%]        0

 

      161,    1       4.91 log file parallel write              4.91

SYS                  oracle@rac1 (LGWR)                  39/55K [  0%]        0

 

      162,    1       3.40 db file parallel write               3.40

SYS                  oracle@rac1 (DBW0)                  27/55K [  0%]        0

 

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

 

Top Blocking Sessions         DB/Inst: ANQING/anqing1  (May 26 08:00 to 23:15)

-> Blocking session activity percentages are calculated with respect to

      waits on enqueues, latches and "buffer busy" only

-> '% Activity' represents the load on the database caused by

      a particular blocking session

-> '# Samples Active' shows the number of ASH samples in which the

      blocking session was found active.

-> 'XIDs' shows the number of distinct transaction IDs sampled in ASH

      when the blocking session was found active.

 

   Blocking Sid % Activity Event Caused                      % Event

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

User                 Program                          # Samples Active     XIDs

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

      161,    1       2.26 log file sync                        2.26

SYS                  oracle@rac1 (LGWR)                 130/55K [  0%]        0

 

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

 

 

Top Sessions running PQs     DB/Inst: ANQING/anqing1  (May 26 08:00 to 23:15)

 

                  No data exists for this section of the report.

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

 

Top DB Objects                DB/Inst: ANQING/anqing1  (May 26 08:00 to 23:15)

 

                  No data exists for this section of the report.

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

 

Top DB Files                  DB/Inst: ANQING/anqing1  (May 26 08:00 to 23:15)

 

                  No data exists for this section of the report.

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

 

Top Latches                   DB/Inst: ANQING/anqing1  (May 26 08:00 to 23:15)

 

                                                                     Max Sample

Latch                             % Latch    Blocking Sid % Activity  Wait secs

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

       # Waits  # Sampled Wts  # Sampled Wts  # Sampled Wts  # Sampled Wts

       Sampled         < 10ms   10ms - 100ms     100ms - 1s          > 1s

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

latch: JS slv state obj latch        8.55     Held Shared       8.55   0.000000

             0              0              0              0              0

 

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

 

 

Activity Over Time            DB/Inst: ANQING/anqing1  (May 26 08:00 to 23:15)

-> Analysis period is divided into smaller time slots

-> Top 3 events are reported in each of those slots

-> 'Slot Count' shows the number of ASH samples in that slot

-> 'Event Count' shows the number of ASH samples waiting for

   that event in that slot

-> '% Event' is 'Event Count' over all ASH samples in the analysis period

 

                         Slot                                   Event

Slot Time (Duration)    Count Event                             Count % Event

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

08:00:00  (84.0 min)       67 control file sequential read         27    3.40

                              control file parallel write          20    2.52

                              CPU + Wait for CPU                    8    1.01

09:24:00  (92.0 min)       71 control file sequential read         23    2.89

                              control file parallel write          22    2.77

                              CPU + Wait for CPU                   10    1.26

10:56:00  (92.0 min)       64 control file sequential read         28    3.52

                              control file parallel write          22    2.77

                              CPU + Wait for CPU                    4    0.50

12:28:00  (92.0 min)       66 control file sequential read         29    3.65

                              control file parallel write          21    2.64

                              CPU + Wait for CPU                   11    1.38

14:00:00  (92.0 min)       56 control file sequential read         30    3.77

                              control file parallel write          22    2.77

                              SQL*Net break/reset to client         1    0.13

15:32:00  (92.0 min)       77 control file sequential read         29    3.65

                              control file parallel write          22    2.77

                              CPU + Wait for CPU                   15    1.89

17:04:00  (92.0 min)       76 control file sequential read         35    4.40

                              control file parallel write          25    3.14

                              CPU + Wait for CPU                    4    0.50

18:36:00  (92.0 min)      159 latch free                           68    8.55

                              control file sequential read         33    4.15

                              control file parallel write          22    2.77

20:08:00  (92.0 min)       80 control file sequential read         33    4.15

                              control file parallel write          24    3.02

                              CPU + Wait for CPU                    5    0.63

21:40:00  (92.0 min)       73 control file sequential read         25    3.14

                              control file parallel write          24    3.02

                              CPU + Wait for CPU                   10    1.26

23:12:00   (3.2 min)        6 CPU + Wait for CPU                    4    0.50

                              control file parallel write           1    0.13

                              log file parallel write               1    0.13

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

 

End of Report

Report written to /u01/daveash.txt

SYS@anqing1(rac1)>

 

 

       这个就是用ashrpt.sql脚本来生成报告,当然也可以使用Toad 来生成,这个也是比较方便的一个工具。

 

 

 

 

 

 

 

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

QQ:492913789

Email:ahdba@qq.com

Blog: http://www.cndba.cn/dave


DBA1 群:62697716();   DBA2 群:62697977()   DBA3 群:62697850()  

DBA 超级群:63306533();  DBA4 群: 83829929  DBA5群: 142216823   

DBA6 群:158654907  聊天 群:40132017   聊天2群:69087192

--加群需要在备注说明Oracle表空间和数据文件的关系,否则拒绝申请

这篇关于Oracle ASH(Active Session History) 说明的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/874641

相关文章

Before和BeforeClass的区别及说明

《Before和BeforeClass的区别及说明》:本文主要介绍Before和BeforeClass的区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Before和BeforeClass的区别一个简单的例子当运行这个测试类时总结Before和Befor

Python pip下载包及所有依赖到指定文件夹的步骤说明

《Pythonpip下载包及所有依赖到指定文件夹的步骤说明》为了方便开发和部署,我们常常需要将Python项目所依赖的第三方包导出到本地文件夹中,:本文主要介绍Pythonpip下载包及所有依... 目录步骤说明命令格式示例参数说明离线安装方法注意事项总结要使用pip下载包及其所有依赖到指定文件夹,请按照以

Oracle修改端口号之后无法启动的解决方案

《Oracle修改端口号之后无法启动的解决方案》Oracle数据库更改端口后出现监听器无法启动的问题确实较为常见,但并非必然发生,这一问题通常源于​​配置错误或环境冲突​​,而非端口修改本身,以下是系... 目录一、问题根源分析​​​二、保姆级解决方案​​​​步骤1:修正监听器配置文件 (listener.

Spring中管理bean对象的方式(专业级说明)

《Spring中管理bean对象的方式(专业级说明)》在Spring框架中,Bean的管理是核心功能,主要通过IoC(控制反转)容器实现,下面给大家介绍Spring中管理bean对象的方式,感兴趣的朋... 目录1.Bean的声明与注册1.1 基于XML配置1.2 基于注解(主流方式)1.3 基于Java

SpringBoot项目中Redis存储Session对象序列化处理

《SpringBoot项目中Redis存储Session对象序列化处理》在SpringBoot项目中使用Redis存储Session时,对象的序列化和反序列化是关键步骤,下面我们就来讲讲如何在Spri... 目录一、为什么需要序列化处理二、Spring Boot 集成 Redis 存储 Session2.1

Oracle 通过 ROWID 批量更新表的方法

《Oracle通过ROWID批量更新表的方法》在Oracle数据库中,使用ROWID进行批量更新是一种高效的更新方法,因为它直接定位到物理行位置,避免了通过索引查找的开销,下面给大家介绍Orac... 目录oracle 通过 ROWID 批量更新表ROWID 基本概念性能优化建议性能UoTrFPH优化建议注

PostgreSQL 序列(Sequence) 与 Oracle 序列对比差异分析

《PostgreSQL序列(Sequence)与Oracle序列对比差异分析》PostgreSQL和Oracle都提供了序列(Sequence)功能,但在实现细节和使用方式上存在一些重要差异,... 目录PostgreSQL 序列(Sequence) 与 oracle 序列对比一 基本语法对比1.1 创建序

idea报错java: 非法字符: ‘\ufeff‘的解决步骤以及说明

《idea报错java:非法字符:‘ufeff‘的解决步骤以及说明》:本文主要介绍idea报错java:非法字符:ufeff的解决步骤以及说明,文章详细解释了为什么在Java中会出现uf... 目录BOM是什么?1. BOM的作用2. 为什么会出现 \ufeff 错误?3. 如何解决 \ufeff 问题?最

Oracle数据库常见字段类型大全以及超详细解析

《Oracle数据库常见字段类型大全以及超详细解析》在Oracle数据库中查询特定表的字段个数通常需要使用SQL语句来完成,:本文主要介绍Oracle数据库常见字段类型大全以及超详细解析,文中通过... 目录前言一、字符类型(Character)1、CHAR:定长字符数据类型2、VARCHAR2:变长字符数

Tomcat版本与Java版本的关系及说明

《Tomcat版本与Java版本的关系及说明》:本文主要介绍Tomcat版本与Java版本的关系及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Tomcat版本与Java版本的关系Tomcat历史版本对应的Java版本Tomcat支持哪些版本的pythonJ