SQL-Tracing in Autonomous Database ausführen
Mit SQL-Tracing können Sie die Quelle einer übermäßigen Datenbank-Workload identifizieren, z.B. eine High-Load-SQL-Anweisung in Ihrer Anwendung.
- SQL-Tracing in Autonomous Database konfigurieren
Zeigt die Schritte zum Konfigurieren von SQL-Tracing in Autonomous Database an. - SQL-Tracing in Autonomous Database aktivieren
Zeigt die Schritte zum Aktivieren von SQL-Tracing für die Datenbanksession an. - SQL-Tracing in Autonomous Database deaktivieren
Zeigt die Schritte zum Deaktivieren von SQL-Tracing in Autonomous Database an. - Trace-Datei anzeigen, die im Cloud-Objektspeicher in Autonomous Database gespeichert wurde
Beschreibt die Benennung der Ausgabedatei für SQL-Trace-Dateien und zeigt die Befehle an, mit denen SieTKPROF
verwenden können, um Trace-Dateidaten zu organisieren und anzuzeigen. - Tracedaten in der SESSION_CLOUD_TRACE-Ansicht in Autonomous Database anzeigen
Wenn Sie SQL-Tracing aktivieren, sind in der ViewSESSION_CLOUD_TRACE
in der Session, in der das Tracing aktiviert wurde, dieselben Traceinformationen verfügbar, die in der Tracedatei im Cloud-Objektspeicher gespeichert wurden.
Übergeordnetes Thema: Performance überwachen und verwalten
SQL-Tracing in Autonomous Database konfigurieren
Zeigt die Schritte zum Konfigurieren von SQL-Tracing in Autonomous Database an.
Wenn Sie SQL Tracing aktivieren, wird die Anwendungsperformance für die Session möglicherweise beeinträchtigt, solange die Traceerfassung aktiviert ist. Diese negativen Auswirkungen auf die Performance sind aufgrund des Overheads beim Erfassen und Speichern von Tracedaten zu erwarten.
So konfigurieren Sie SQL-Tracing für Datenbanken:
Übergeordnetes Thema: SQL-Tracing in Autonomous Database ausführen
SQL-Tracing in Autonomous Database aktivieren
Zeigt die Schritte zum Aktivieren von SQL-Tracing für die Datenbanksession an.
Wenn Sie SQL Tracing aktivieren, wird die Anwendungsperformance für die Session möglicherweise beeinträchtigt, solange die Traceerfassung aktiviert ist. Diese negativen Auswirkungen auf die Performance sind aufgrund des Overheads beim Erfassen und Speichern von Tracedaten zu erwarten.
Bevor Sie SQL-Tracing aktivieren, müssen Sie die Datenbank zum Speichern von SQL Trace-Dateien konfigurieren. Weitere Informationen finden Sie unter SQL-Tracing in Autonomous Database konfigurieren.
So aktivieren Sie SQL-Tracing:
Übergeordnetes Thema: SQL-Tracing in Autonomous Database ausführen
SQL-Tracing in Autonomous Database deaktivieren
Zeigt die Schritte zum Deaktivieren von SQL-Tracing in Autonomous Database an.
So deaktivieren Sie SQL-Tracing:
Wenn Sie SQL-Tracing deaktivieren, werden die Tracingdaten, die während der Ausführung der Session mit aktiviertem Trace erfasst wurden, in eine Tabelle kopiert und an eine Tracedatei im Cloud-Objektspeicher gesendet. Sie haben zwei Möglichkeiten, Trace-Daten anzuzeigen:
-
SQL Trace-Daten in der im Cloud Object Store gespeicherten Trace-Datei anzeigen und analysieren. Weitere Informationen finden Sie unter Im Cloud-Objektspeicher gespeicherte Trace-Datei in Autonomous Database anzeigen.
-
Die in der View
SESSION_CLOUD_TRACE
gespeicherten SQL Trace-Daten anzeigen und analysieren. Weitere Informationen finden Sie unter Tracedaten in der SESSION_CLOUD_TRACE-View in Autonomous Database anzeigen.
Übergeordnetes Thema: SQL-Tracing in Autonomous Database ausführen
Im Cloud-Objektspeicher gespeicherte Tracedatei in Autonomous Database anzeigen
Beschreibt die Benennung der Ausgabedatei für SQL-Tracedateien und zeigt die Befehle an, mit denen Sie TKPROF
zum Organisieren und Anzeigen der Trace-Dateidaten verwenden können.
Sie verwenden Daten aus SQL-Tracedatei, um die Anwendungsperformance in Autonomous Database zu analysieren. Wenn Sie SQL Trace in Ihrer Datenbanksitzung deaktivieren, werden Daten in den mit DEFAULT_LOGGING_BUCKET
konfigurierten Cloudobjektspeicher-Bucket geschrieben.
Die SQL Trace-Funktion schreibt die in der Session erfassten Tracedaten im folgenden Format in den Cloud-Objektspeicher:
default_logging_bucket/
sqltrace
/
clientID
/moduleName
/sqltrace_
numID1
_numID2
.trc
Der Dateiname besteht aus folgenden Komponenten:
-
default_logging_bucket: Der Wert der Datenbankeigenschaft
DEFAULT_LOGGING_BUCKET
. Weitere Informationen finden Sie unter SQL-Tracing in Autonomous Database konfigurieren. -
clientID
: Die Client-ID. Weitere Informationen finden Sie unter SQL-Tracing in Autonomous Database aktivieren. -
moduleName
: Der Modulname. Weitere Informationen finden Sie unter SQL-Tracing in Autonomous Database aktivieren. -
numID1
_numID2
: Zwei IDs, die von der SQL Trace-Funktion bereitgestellt werden. Die numerischen WertenumID1
undnumID2
unterscheiden jeden Trace-Dateinamen eindeutig von anderen Sessions, die das Tracing verwenden und Trace-Dateien im selben Bucket im Cloud-Objektspeicher erstellen.Wenn der Datenbankservice Parallelität unterstützt und eine Session eine parallele Abfrage ausführt, kann die SQL Trace-Funktion mehrere Tracedateien mit verschiedenen Werten für
numID1
undnumID2
erstellen.
Wenn SQL-Tracing innerhalb derselben Session mehrmals aktiviert und deaktiviert wird, generiert jede Trace-Iteration eine separate Trace-Datei im Cloud-Objektspeicher. Um zu vermeiden, dass vorherige Traces überschrieben werden, die in der Session generiert wurden, folgen nachfolgend generierte Dateien derselben Benennungskonvention und fügen dem Trace-Dateinamen ein numerisches Suffix hinzu. Dieses numerische Suffix beginnt mit der Zahl 1 und wird für jede nachfolgende Tracingiteration um 1 erhöht.
Beispiel: Der folgende Name ist ein Beispiel für eine generierte Tracedatei, wenn Sie die Client-ID auf "sql_test
" und den Modulnamen auf "modname
" festlegen:
sqltrace/sqlt_test/modname/sqltrace_5415_56432.trc
Sie können TKPROF
ausführen, um die Trace-Datei in eine lesbare Datei zu übersetzen.
Informationen zur Verwendung des Utilitys TKPROF
finden Sie in der SQL-Tuning-Dokumentation für Oracle Database unter "Tools für End-to-End-Anwendungstracing".
Übergeordnetes Thema: SQL-Tracing in Autonomous Database ausführen
Tracedaten in der SESSION_CLOUD_TRACE-View in Autonomous Database anzeigen
Wenn Sie SQL-Tracing aktivieren, sind in der View SESSION_CLOUD_TRACE
in der Session, in der das Tracing aktiviert wurde, dieselben Traceinformationen verfügbar, die in der Tracedatei im Cloud-Objektspeicher gespeichert wurden.
In der Datenbanksession können Sie SQL-Tracingdaten in der View SESSION_CLOUD_TRACE
anzeigen. Die View SESSION_CLOUD_TRACE
enthält zwei Spalten: ROW_NUMBER
und TRACE
:
DESC SESSION_CLOUD_TRACE
Name Null? Type
---------- ----- ------------------------------
ROW_NUMBER NUMBER
TRACE VARCHAR2(32767)
ROW_NUMBER
gibt die Reihenfolge der Trace-Daten in der Spalte TRACE
an. Jede Zeile der Traceausgabe in einer Tracedatei wird zu einer Zeile in der Tabelle und ist in der Spalte TRACE
verfügbar.
Nachdem Sie SQL-Tracing für die Session deaktiviert haben, können Sie Abfragen in der View SESSION_CLOUD_TRACE
ausführen.
Beispiele:
SELECT trace FROM SESSION_CLOUD_TRACE ORDER BY row_number;
Die Daten in SESSION_CLOUD_TRACE
bleiben für die Dauer der Session erhalten. Nach der Abmeldung oder dem Schließen der Session sind die Daten nicht mehr verfügbar.
Wenn SQL Trace mehrmals innerhalb derselben Session aktiviert und deaktiviert wird, zeigt SESSION_CLOUD_TRACE
die Tracedaten für alle Iterationen kumulativ an. Daher werden Tracedaten, die durch eine frühere Iteration erzeugt wurden, nicht entfernt, wenn Sie Tracing in einer Session erneut aktivieren, nachdem Sie es zuvor deaktiviert haben.
Übergeordnetes Thema: SQL-Tracing in Autonomous Database ausführen