SlideShare ist ein Scribd-Unternehmen logo
1 von 21
Downloaden Sie, um offline zu lesen
www.informatik-aktuell.de
Senior DBA bei dbaservices® GmbH in Neu-Isenburg
MANAGED DATABASE SERVICES 24x7
Referent: Norbert Rieger
IT-Tage Frankfurt 2015
Optimierung der Performance bei
Oracle-Datenbanken "nur" mit der
Standard Edition
®
®
Datenbank Administration ist unsere Kernkompetenz
• Seit 2001 (ehemals allnabout GmbH)
• Team mit 15 Mitarbeiter
• ORACLE- und MSSQL-Datenbanksysteme
• Beratung und Implementierung
• 24/7 Monitoring und Bereitschaft
• 3rd Level Support
• Managed Database Outtasking Modelle
• >800 Datenbankprojekte
• ITIL v.3
• ISO 9001 und 27001 i.V.
®
Agenda
• Optimierung Performance mit der Standard Edition
• Vor- und Nachteile der Tools
• Best Practice
®
Tools
• Enterprise Manager
• AWR
• utlbstat/utlestat – Vorgänger vor 8.1.6 für statspack
• statspack – Periodische Snaps – Reports nach Bedarf
• Weitere Tools
®
Details
• Enterprise Manager -> aber ohne Diagnostics und
Tuning Pack!
• AWR –> nur mit Enterprise Edition
®
utlbstat/utlestat
Die beiden SQL-Skripte befinden sich in dem Verzeichnis
ORACLE_HOME/rdbms/admin.
Die Analyse wird gestartet mit dem Skript utlbstat.sql und wird beendet mit
dem Skript utlestat.sql, welches den Report report.txt erstellt.
®
Abschnitte im Report utlbstat/utlestat
1) Library cache Statistiken
2) Anzahl angemeldeter User
3) Statistiken wie CPU, DB TIME, db block gets etc.
4) Wait Events ohne/nur Hintergrundprozesse
5) Statistiken der Latche
6) Buffer busy wait Statistiken
7) Liste der init.ora-Parameter
8) Summe der I/O Operationen auf den Tablespaces
®
Beispiele aus dem Report
AD 1) Library cache Statistiken
18 LIBRARY GETS GETHITRATI PINS PINHITRATI RELOADS INVALIDATI
19 ------------ ---------- ---------- ---------- ---------- ---------- ----------
20 SQL AREA 796 .991 2836 .993 0 0
21 TABLE/PROCED 130 1 656 1 0 0
22 BODY 17 1 260 1 0 0
23 TRIGGER 1 1 70 1 0 0
24 INDEX 0 1 0 1 0 0
®
AD 3) Statistiken wie CPU, DB TIME, db block gets etc.
97 Statistic Total Per Transact Per Logon Per Second
98 --------------------------- ------------ ------------ ------------ ------------
99 CPU used by this session 45 1.29 .16 1.15
100 CPU used when call started 35 1 .12 .9
101 CR blocks created 2 .06 .01 .05
102 DB time 9538 272.51 33.94 244.56
®
statspack – Periodische Snaps – Reports nach Bedarf
Bewertung: Dieses Werkzeug ist für eine periodische maschinelle
Analyse sehr nützlich. Es sind allerdings Vorarbeiten erforderlich.
Beschreibung im Metalink:
https://docs.oracle.com/cd/B10500_01/server.920/a96533/statspac.htm
Voraussetzungen:
Ausführung des SQL-Skripts @?/rdbms/admin/spcreate.sql
®
Installation: Das Skript spcreate.sql ruft folgende Skripte auf
1. SPCUSR.SQL: Legt den User an und teilt die Privilegien zu
2. SPCTAB.SQL: Erstellt die Tabellen
3. SPCPKG.SQL: Erstellt die Packages
Empfehlung
Separaten Tablespace (perfstat) anlegen, damit dieser später leichter gelöscht werden kann.
Aufruf des Skripts im Batch (hier Linux):
SQL> CONNECT / AS SYSDBA
SQL> define default_tablespace='PERFSTAT'
SQL> define temporary_tablespace='TEMP'
SQL> define perfstat_password='<my_perfstat_password>'
SQL> @?/rdbms/admin/spcreate.sql
®
Statistiken sammeln
Diese werden mit dem Befehl snap gesammelt. Der Aufruf kann manuell
oder per Job erfolgen.
Sobald zwei Snaps ausgeführt wurden, kann ein Report erstellt werden.
SQL> CONNECT perfstat/<my_perfstat_password>
SQL> EXECUTE statspack.snap;
®
Report erstellen
Dieser wird mit dem SQL-Skript spreport.sql erstellt.
SQL> connect perfstat/<my_perfstat_password>
SQL> @?/rdbms/admin/spreport.sql
Ablauf:
Output-1 -> Liste der Snaps
Input-1 -> <snap-start>
Input-2 -> <snap-ende>
Input-3 (optional) –> Reportname (default = sp_<snap-start>_<snap_ende>.lst)
Output-2 – Anzeige/Speicherung Report
®
Struktur eines Reports
Die Struktur des Reports entspricht in weiten Teilen der
Struktur des Reports, welcher mit utlbstat/utlestat erstellt
wurde.
®
Weitere Tools
Aktivierung von Traces
Metalink:
http://docs.oracle.com/cd/E25054_01/server.1111/e16638/sqltrace.htm#autoId9
1. Instanz-Ebene
EXECUTE DBMS_MONITOR.DATABASE_TRACE_ENABLE
(waits => TRUE, binds => FALSE, instance_name => '<instance>');
EXECUTE DBMS_MONITOR.DATABASE_TRACE_DISABLE
(instance_name => '<instance>');
Auswertung mit trcess und TKPROF
®
2. Session-Ebene
EXECUTE DBMS_MONITOR.SESSION_TRACE_ENABLE(session_id => <nr1>, serial_num
=> <nr2>,waits => TRUE, binds => FALSE);
EXECUTE DBMS_MONITOR.SESSION_TRACE_DISABLE(session_id => <nr1>, serial_num
=> <nr2>);
3. SQL-Plus – autotrace
Metalink:
http://docs.oracle.com/cd/B10500_01/server.920/a96533/autotrac.htm
SET AUTOTRACE OFF
SET AUTOTRACE ON {,EXPLAIN,STATISTICS}
SET AUTOTRACE TRACEONLY
®
Systemstatistiken
1.) Voraussetzungen
Parameter = STATISTICS_LEVEL = TYPICAL oder ALL
2.) Erstellen
Package = DBMS_STATS.GATHER_SCHEMA_STATS()
Link: http://wikis.gm.fh-koeln.de/wiki_db/Datenbanken/Statistiken
3.) Auswerten
View: DBA_TABLES (u.a.) – Spalte „ LAST_ANALYZED „
4.) Dictionary-Views
DBA_TABLES, DBA_OBJECT_TABLES, DBA_TAB_STATISTICS, DBA_TAB_COL_STATISTICS u.a.
®
Waits
1.) Wait-Events
View: V$EVENT_NAME
Link: http://docs.oracle.com/cd/B19306_01/server.102/b14237/waitevents003.htm#BGGIBDJI
2.) Wait-Klassen
Hinweis: Jeder Wait-Event gehört zu einer Wait-Klasse.
View: V$SYSTEM_WAIT_CLASS
Link: https://docs.oracle.com/cd/B19306_01/server.102/b14237/waitevents001.htm#BGGHJGII
®
Optimizer – CBO – Ausführungsplan erstellen
1.) SQLPLUS (Beispiel)
set autotrace on
SELECT name FROM v$database;
2.) Package (Beispiel)
EXPLAIN PLAN FOR SELECT name FROM v$database;
SELECT PLAN_TABLE_OUTPUT FROM TABLE(DBMS_XPLAN.DISPLAY());
Vielen Dank für die Aufmerksamkeit
Referent: Norbert Rieger, Senior DBA
norbert.rieger@dbaservices.de
www.dbaservices.de

Weitere ähnliche Inhalte

Was ist angesagt?

DOAG 2011: MySQL Replication
DOAG 2011: MySQL ReplicationDOAG 2011: MySQL Replication
DOAG 2011: MySQL Replication
FromDual GmbH
 
DOAG 2011: MySQL Performance Tuning
DOAG 2011: MySQL Performance TuningDOAG 2011: MySQL Performance Tuning
DOAG 2011: MySQL Performance Tuning
FromDual GmbH
 
FROSCON 2011: MySQL Replication
FROSCON 2011: MySQL ReplicationFROSCON 2011: MySQL Replication
FROSCON 2011: MySQL Replication
FromDual GmbH
 

Was ist angesagt? (14)

MySQL für Oracle DBA's
MySQL für Oracle DBA'sMySQL für Oracle DBA's
MySQL für Oracle DBA's
 
DOAG 2011: MySQL Replication
DOAG 2011: MySQL ReplicationDOAG 2011: MySQL Replication
DOAG 2011: MySQL Replication
 
DOAG 2011: MySQL Performance Tuning
DOAG 2011: MySQL Performance TuningDOAG 2011: MySQL Performance Tuning
DOAG 2011: MySQL Performance Tuning
 
Der Datenbank-Backup ist gemacht - was nun?
Der Datenbank-Backup ist gemacht - was nun?Der Datenbank-Backup ist gemacht - was nun?
Der Datenbank-Backup ist gemacht - was nun?
 
NoSQL with MySQL
NoSQL with MySQLNoSQL with MySQL
NoSQL with MySQL
 
Sql Server Grundlagen für Sharepoint Administratoren
Sql Server Grundlagen für Sharepoint AdministratorenSql Server Grundlagen für Sharepoint Administratoren
Sql Server Grundlagen für Sharepoint Administratoren
 
Transaktionssysteme
TransaktionssystemeTransaktionssysteme
Transaktionssysteme
 
MySQL-Server im Teamwork - Replikation und Cluster
MySQL-Server im Teamwork - Replikation und ClusterMySQL-Server im Teamwork - Replikation und Cluster
MySQL-Server im Teamwork - Replikation und Cluster
 
Weltweite Produktionsdatenverwaltung mit MySQL-Replikation
Weltweite Produktionsdatenverwaltung mit MySQL-ReplikationWeltweite Produktionsdatenverwaltung mit MySQL-Replikation
Weltweite Produktionsdatenverwaltung mit MySQL-Replikation
 
FROSCON 2011: MySQL Replication
FROSCON 2011: MySQL ReplicationFROSCON 2011: MySQL Replication
FROSCON 2011: MySQL Replication
 
MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?
MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?
MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?
 
SQL Tuning Sets: Generieren, Verwenden, Transferieren, Szenarios
SQL Tuning Sets: Generieren, Verwenden, Transferieren, Szenarios SQL Tuning Sets: Generieren, Verwenden, Transferieren, Szenarios
SQL Tuning Sets: Generieren, Verwenden, Transferieren, Szenarios
 
What's new in SQL und PL/SQL in 12.2
What's new in SQL und PL/SQL in 12.2What's new in SQL und PL/SQL in 12.2
What's new in SQL und PL/SQL in 12.2
 
Ausgewählte PL/SQL Packages (3)
Ausgewählte PL/SQL Packages (3)Ausgewählte PL/SQL Packages (3)
Ausgewählte PL/SQL Packages (3)
 

Andere mochten auch

INFRA TODAY 8-2008
INFRA TODAY 8-2008INFRA TODAY 8-2008
INFRA TODAY 8-2008
Mukesh Mehta
 
основные требования валютного законодательства
основные требования валютного законодательстваосновные требования валютного законодательства
основные требования валютного законодательства
BDA
 
FAO Biannual Food Outlook Oct 2015
FAO Biannual Food Outlook Oct 2015FAO Biannual Food Outlook Oct 2015
FAO Biannual Food Outlook Oct 2015
Danny Marcus
 

Andere mochten auch (15)

Point To Be Noted For Europe Tour
Point To Be Noted For Europe TourPoint To Be Noted For Europe Tour
Point To Be Noted For Europe Tour
 
Si bis 2015 scapm
Si bis 2015 scapmSi bis 2015 scapm
Si bis 2015 scapm
 
Aarohan Residences on golf course road by vipul - 9599043127.
Aarohan Residences on golf course road by vipul - 9599043127.Aarohan Residences on golf course road by vipul - 9599043127.
Aarohan Residences on golf course road by vipul - 9599043127.
 
047(105) proreutov
047(105) proreutov047(105) proreutov
047(105) proreutov
 
INFRA TODAY 8-2008
INFRA TODAY 8-2008INFRA TODAY 8-2008
INFRA TODAY 8-2008
 
основные требования валютного законодательства
основные требования валютного законодательстваосновные требования валютного законодательства
основные требования валютного законодательства
 
No service here, ii tians flock to tech
No service here, ii tians flock to techNo service here, ii tians flock to tech
No service here, ii tians flock to tech
 
FAO Biannual Food Outlook Oct 2015
FAO Biannual Food Outlook Oct 2015FAO Biannual Food Outlook Oct 2015
FAO Biannual Food Outlook Oct 2015
 
150 m migrant workers
150 m migrant workers150 m migrant workers
150 m migrant workers
 
клімат украини
клімат украиниклімат украини
клімат украини
 
Formulaire de la construction métallique p. maitre lemoniteur
Formulaire de la construction métallique p. maitre lemoniteurFormulaire de la construction métallique p. maitre lemoniteur
Formulaire de la construction métallique p. maitre lemoniteur
 
Nobel peace prize
Nobel peace prizeNobel peace prize
Nobel peace prize
 
Jurnal CDIMM_decembrie 2015_Europe Direct Maramures
Jurnal CDIMM_decembrie 2015_Europe Direct MaramuresJurnal CDIMM_decembrie 2015_Europe Direct Maramures
Jurnal CDIMM_decembrie 2015_Europe Direct Maramures
 
User-space Network Processing
User-space Network ProcessingUser-space Network Processing
User-space Network Processing
 
DNA - 3-4-2006
DNA - 3-4-2006DNA - 3-4-2006
DNA - 3-4-2006
 

Ähnlich wie Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenbanken "nur" mit der Standard Edition

Oracle workshop sessiontracing
Oracle workshop sessiontracingOracle workshop sessiontracing
Oracle workshop sessiontracing
ciganek
 

Ähnlich wie Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenbanken "nur" mit der Standard Edition (20)

Oracle workshop sessiontracing
Oracle workshop sessiontracingOracle workshop sessiontracing
Oracle workshop sessiontracing
 
Introduction into Oracle Data Pump 11g/12c - Export and Import Data
Introduction into Oracle Data Pump 11g/12c - Export and Import DataIntroduction into Oracle Data Pump 11g/12c - Export and Import Data
Introduction into Oracle Data Pump 11g/12c - Export and Import Data
 
Komprimierung in der Oracle Datenbank (Stand 11gR2, 12c)
Komprimierung in der Oracle Datenbank (Stand 11gR2, 12c)Komprimierung in der Oracle Datenbank (Stand 11gR2, 12c)
Komprimierung in der Oracle Datenbank (Stand 11gR2, 12c)
 
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
 
01 sqlplus
01 sqlplus01 sqlplus
01 sqlplus
 
18c: private temporary tables
18c: private temporary tables18c: private temporary tables
18c: private temporary tables
 
Warum Monitoring und warum Icinga 2 (Webinar vom 04.12.2013)
Warum Monitoring und warum Icinga 2 (Webinar vom 04.12.2013)Warum Monitoring und warum Icinga 2 (Webinar vom 04.12.2013)
Warum Monitoring und warum Icinga 2 (Webinar vom 04.12.2013)
 
Performance-Analyse mit Bordmitteln
Performance-Analyse mit BordmittelnPerformance-Analyse mit Bordmitteln
Performance-Analyse mit Bordmitteln
 
Angelika Gallwitz – IT-Tage 2015 – Statistische Auswertungen in Oracle mit S...
Angelika Gallwitz  – IT-Tage 2015 – Statistische Auswertungen in Oracle mit S...Angelika Gallwitz  – IT-Tage 2015 – Statistische Auswertungen in Oracle mit S...
Angelika Gallwitz – IT-Tage 2015 – Statistische Auswertungen in Oracle mit S...
 
Sql Server GrundlagenfüR Share Point Admins
Sql Server GrundlagenfüR Share Point AdminsSql Server GrundlagenfüR Share Point Admins
Sql Server GrundlagenfüR Share Point Admins
 
Datenbank-Hausputz für Einsteiger
Datenbank-Hausputz für EinsteigerDatenbank-Hausputz für Einsteiger
Datenbank-Hausputz für Einsteiger
 
Datentransfer mit Oracle Tools
Datentransfer mit Oracle ToolsDatentransfer mit Oracle Tools
Datentransfer mit Oracle Tools
 
Oracle-DB: Beeinflussen der Ausführungspläne von SQL-Statements ohne Code-Anp...
Oracle-DB: Beeinflussen der Ausführungspläne von SQL-Statements ohne Code-Anp...Oracle-DB: Beeinflussen der Ausführungspläne von SQL-Statements ohne Code-Anp...
Oracle-DB: Beeinflussen der Ausführungspläne von SQL-Statements ohne Code-Anp...
 
Oracle Old Features DOAG 2011
Oracle Old Features DOAG 2011Oracle Old Features DOAG 2011
Oracle Old Features DOAG 2011
 
Domino Statistiken verstehen und nutzen (Teil 1) - 41. DNUG Konferenz
Domino Statistiken verstehen und nutzen (Teil 1) - 41. DNUG KonferenzDomino Statistiken verstehen und nutzen (Teil 1) - 41. DNUG Konferenz
Domino Statistiken verstehen und nutzen (Teil 1) - 41. DNUG Konferenz
 
Webinar - Boost your ABAP
Webinar - Boost your ABAPWebinar - Boost your ABAP
Webinar - Boost your ABAP
 
Adxis Produkt Beschreibung
Adxis Produkt BeschreibungAdxis Produkt Beschreibung
Adxis Produkt Beschreibung
 
OSMC 2013 | Enterprise Platforms Monitoring at s IT Solutions AT by Johannes ...
OSMC 2013 | Enterprise Platforms Monitoring at s IT Solutions AT by Johannes ...OSMC 2013 | Enterprise Platforms Monitoring at s IT Solutions AT by Johannes ...
OSMC 2013 | Enterprise Platforms Monitoring at s IT Solutions AT by Johannes ...
 
Oracle Performance-Analyse mit frei verfügbaren Mitteln
Oracle Performance-Analyse mit frei verfügbaren Mitteln Oracle Performance-Analyse mit frei verfügbaren Mitteln
Oracle Performance-Analyse mit frei verfügbaren Mitteln
 
Real Application Testing - DOAG SIG Database 2010 - Simon Dickmeiß
Real Application Testing - DOAG SIG Database 2010 - Simon DickmeißReal Application Testing - DOAG SIG Database 2010 - Simon Dickmeiß
Real Application Testing - DOAG SIG Database 2010 - Simon Dickmeiß
 

Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenbanken "nur" mit der Standard Edition

  • 2. Senior DBA bei dbaservices® GmbH in Neu-Isenburg MANAGED DATABASE SERVICES 24x7 Referent: Norbert Rieger IT-Tage Frankfurt 2015 Optimierung der Performance bei Oracle-Datenbanken "nur" mit der Standard Edition ®
  • 3. ® Datenbank Administration ist unsere Kernkompetenz • Seit 2001 (ehemals allnabout GmbH) • Team mit 15 Mitarbeiter • ORACLE- und MSSQL-Datenbanksysteme • Beratung und Implementierung • 24/7 Monitoring und Bereitschaft • 3rd Level Support • Managed Database Outtasking Modelle • >800 Datenbankprojekte • ITIL v.3 • ISO 9001 und 27001 i.V.
  • 4. ® Agenda • Optimierung Performance mit der Standard Edition • Vor- und Nachteile der Tools • Best Practice
  • 5. ® Tools • Enterprise Manager • AWR • utlbstat/utlestat – Vorgänger vor 8.1.6 für statspack • statspack – Periodische Snaps – Reports nach Bedarf • Weitere Tools
  • 6. ® Details • Enterprise Manager -> aber ohne Diagnostics und Tuning Pack! • AWR –> nur mit Enterprise Edition
  • 7. ® utlbstat/utlestat Die beiden SQL-Skripte befinden sich in dem Verzeichnis ORACLE_HOME/rdbms/admin. Die Analyse wird gestartet mit dem Skript utlbstat.sql und wird beendet mit dem Skript utlestat.sql, welches den Report report.txt erstellt.
  • 8. ® Abschnitte im Report utlbstat/utlestat 1) Library cache Statistiken 2) Anzahl angemeldeter User 3) Statistiken wie CPU, DB TIME, db block gets etc. 4) Wait Events ohne/nur Hintergrundprozesse 5) Statistiken der Latche 6) Buffer busy wait Statistiken 7) Liste der init.ora-Parameter 8) Summe der I/O Operationen auf den Tablespaces
  • 9. ® Beispiele aus dem Report AD 1) Library cache Statistiken 18 LIBRARY GETS GETHITRATI PINS PINHITRATI RELOADS INVALIDATI 19 ------------ ---------- ---------- ---------- ---------- ---------- ---------- 20 SQL AREA 796 .991 2836 .993 0 0 21 TABLE/PROCED 130 1 656 1 0 0 22 BODY 17 1 260 1 0 0 23 TRIGGER 1 1 70 1 0 0 24 INDEX 0 1 0 1 0 0
  • 10. ® AD 3) Statistiken wie CPU, DB TIME, db block gets etc. 97 Statistic Total Per Transact Per Logon Per Second 98 --------------------------- ------------ ------------ ------------ ------------ 99 CPU used by this session 45 1.29 .16 1.15 100 CPU used when call started 35 1 .12 .9 101 CR blocks created 2 .06 .01 .05 102 DB time 9538 272.51 33.94 244.56
  • 11. ® statspack – Periodische Snaps – Reports nach Bedarf Bewertung: Dieses Werkzeug ist für eine periodische maschinelle Analyse sehr nützlich. Es sind allerdings Vorarbeiten erforderlich. Beschreibung im Metalink: https://docs.oracle.com/cd/B10500_01/server.920/a96533/statspac.htm Voraussetzungen: Ausführung des SQL-Skripts @?/rdbms/admin/spcreate.sql
  • 12. ® Installation: Das Skript spcreate.sql ruft folgende Skripte auf 1. SPCUSR.SQL: Legt den User an und teilt die Privilegien zu 2. SPCTAB.SQL: Erstellt die Tabellen 3. SPCPKG.SQL: Erstellt die Packages Empfehlung Separaten Tablespace (perfstat) anlegen, damit dieser später leichter gelöscht werden kann. Aufruf des Skripts im Batch (hier Linux): SQL> CONNECT / AS SYSDBA SQL> define default_tablespace='PERFSTAT' SQL> define temporary_tablespace='TEMP' SQL> define perfstat_password='<my_perfstat_password>' SQL> @?/rdbms/admin/spcreate.sql
  • 13. ® Statistiken sammeln Diese werden mit dem Befehl snap gesammelt. Der Aufruf kann manuell oder per Job erfolgen. Sobald zwei Snaps ausgeführt wurden, kann ein Report erstellt werden. SQL> CONNECT perfstat/<my_perfstat_password> SQL> EXECUTE statspack.snap;
  • 14. ® Report erstellen Dieser wird mit dem SQL-Skript spreport.sql erstellt. SQL> connect perfstat/<my_perfstat_password> SQL> @?/rdbms/admin/spreport.sql Ablauf: Output-1 -> Liste der Snaps Input-1 -> <snap-start> Input-2 -> <snap-ende> Input-3 (optional) –> Reportname (default = sp_<snap-start>_<snap_ende>.lst) Output-2 – Anzeige/Speicherung Report
  • 15. ® Struktur eines Reports Die Struktur des Reports entspricht in weiten Teilen der Struktur des Reports, welcher mit utlbstat/utlestat erstellt wurde.
  • 16. ® Weitere Tools Aktivierung von Traces Metalink: http://docs.oracle.com/cd/E25054_01/server.1111/e16638/sqltrace.htm#autoId9 1. Instanz-Ebene EXECUTE DBMS_MONITOR.DATABASE_TRACE_ENABLE (waits => TRUE, binds => FALSE, instance_name => '<instance>'); EXECUTE DBMS_MONITOR.DATABASE_TRACE_DISABLE (instance_name => '<instance>'); Auswertung mit trcess und TKPROF
  • 17. ® 2. Session-Ebene EXECUTE DBMS_MONITOR.SESSION_TRACE_ENABLE(session_id => <nr1>, serial_num => <nr2>,waits => TRUE, binds => FALSE); EXECUTE DBMS_MONITOR.SESSION_TRACE_DISABLE(session_id => <nr1>, serial_num => <nr2>); 3. SQL-Plus – autotrace Metalink: http://docs.oracle.com/cd/B10500_01/server.920/a96533/autotrac.htm SET AUTOTRACE OFF SET AUTOTRACE ON {,EXPLAIN,STATISTICS} SET AUTOTRACE TRACEONLY
  • 18. ® Systemstatistiken 1.) Voraussetzungen Parameter = STATISTICS_LEVEL = TYPICAL oder ALL 2.) Erstellen Package = DBMS_STATS.GATHER_SCHEMA_STATS() Link: http://wikis.gm.fh-koeln.de/wiki_db/Datenbanken/Statistiken 3.) Auswerten View: DBA_TABLES (u.a.) – Spalte „ LAST_ANALYZED „ 4.) Dictionary-Views DBA_TABLES, DBA_OBJECT_TABLES, DBA_TAB_STATISTICS, DBA_TAB_COL_STATISTICS u.a.
  • 19. ® Waits 1.) Wait-Events View: V$EVENT_NAME Link: http://docs.oracle.com/cd/B19306_01/server.102/b14237/waitevents003.htm#BGGIBDJI 2.) Wait-Klassen Hinweis: Jeder Wait-Event gehört zu einer Wait-Klasse. View: V$SYSTEM_WAIT_CLASS Link: https://docs.oracle.com/cd/B19306_01/server.102/b14237/waitevents001.htm#BGGHJGII
  • 20. ® Optimizer – CBO – Ausführungsplan erstellen 1.) SQLPLUS (Beispiel) set autotrace on SELECT name FROM v$database; 2.) Package (Beispiel) EXPLAIN PLAN FOR SELECT name FROM v$database; SELECT PLAN_TABLE_OUTPUT FROM TABLE(DBMS_XPLAN.DISPLAY());
  • 21. Vielen Dank für die Aufmerksamkeit Referent: Norbert Rieger, Senior DBA norbert.rieger@dbaservices.de www.dbaservices.de