Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Laufzeit eines Statements bestimmen (Oracle)

Empfohlene Antworten

Veröffentlicht

Hey,

wie bestimme ich die dauer eines Statements das gerade auf der Datenbank ausgeführt wird?

Die SQL_ID und sql_CHILD_NUMBER des Statemtns liegen vor... help plz :P

lg

Hi,

probiers mal hier:

SQL> descr v$session_longops;

 Name                                      Null?    Typ

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

 SID                                                NUMBER

 SERIAL#                                            NUMBER

 OPNAME                                             VARCHAR2(64)

 TARGET                                             VARCHAR2(64)

 TARGET_DESC                                        VARCHAR2(32)

 SOFAR                                              NUMBER

 TOTALWORK                                          NUMBER

 UNITS                                              VARCHAR2(32)

 START_TIME                                         DATE

 LAST_UPDATE_TIME                                   DATE

 TIMESTAMP                                          DATE

 TIME_REMAINING                                     NUMBER

 ELAPSED_SECONDS                                    NUMBER

 CONTEXT                                            NUMBER

 MESSAGE                                            VARCHAR2(512)

 USERNAME                                           VARCHAR2(30)

 SQL_ADDRESS                                        RAW(8)

 SQL_HASH_VALUE                                     NUMBER

 SQL_ID                                             VARCHAR2(13)

 SQL_PLAN_HASH_VALUE                                NUMBER

 SQL_EXEC_START                                     DATE

 SQL_EXEC_ID                                        NUMBER

 SQL_PLAN_LINE_ID                                   NUMBER

 SQL_PLAN_OPERATION                                 VARCHAR2(30)

 SQL_PLAN_OPTIONS                                   VARCHAR2(30)

 QCSID                                              NUMBER


SQL>

Hi,

wenn eine Transaction 6 Sekunden dauert und 10.000 Blocks liest. Kann natürlich sein, dass bei dir nichts angezeigt wird. Dann probier mal dieses hier:

select a.sid, b.sql_text,a.SQL_EXEC_START from v$session a, v$sqltext b where a.SQL_ID = b.sql_id;

Hi,

wenn eine Transaction 6 Sekunden dauert und 10.000 Blocks liest.

Das ist so nicht ganz richtig. Zum sind ist es keine Transaktion die in der v$session_longops gelistet werden sondern Statements, zum anderen gibt es sowohl die 6 Sekunden Grenze als auch die 10000 Blockgrenze.

Das alleine reicht aber nicht, denn es gibt durchaus Langläufer, die dort nicht auftauchen.

Eine sehr gute Erläuterung findet sich hier.

Dim

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.