Hotzy / Held / Adar Der Oracle DBA
2. überarbeitete Auflage 2016
ISBN: 978-3-446-44420-1
Verlag: Carl Hanser
Format: PDF
Kopierschutz: 1 - PDF Watermark
Handbuch für die Administration der Oracle Database 12c
E-Book, Deutsch, 831 Seiten
ISBN: 978-3-446-44420-1
Verlag: Carl Hanser
Format: PDF
Kopierschutz: 1 - PDF Watermark
Autoren/Hrsg.
Fachgebiete
Weitere Infos & Material
1;Inhalt;6
2;Vorwort;24
3;1 Schnelleinstieg;26
3.1;1.1 Grundsätzliches zu einer Oracle-Datenbank;26
3.1.1;1.1.1 Die Oracle-Instanz;27
3.1.2;1.1.2 Die System Global Area;27
3.1.3;1.1.3 Initialisierungsparameter;27
3.1.4;1.1.4 Die Oracle-Datenbank;27
3.1.5;1.1.5 Die Kontrolldatei;28
3.1.6;1.1.6 Die Redo Log-Dateien;28
3.1.7;1.1.7 Instanz-Recovery;28
3.1.8;1.1.8 Betriebsarten einer Datenbank;28
3.1.9;1.1.9 Optimal Flexible Architecture (OFA);29
3.2;1.2 Vorbereitung eines Linux- und Windows-Systems für die Oracle-Installation;29
3.2.1;1.2.1 Die Oracle-Editionen;30
3.2.2;1.2.2 Hardware- und Softwarevoraussetzungen;33
3.2.3;1.2.3 Vorbereitung eines Windows-Systems für die Installation;34
3.2.4;1.2.4 Vorbereitung eines Linux-Systems für die Datenbankinstallation;35
3.2.4.1;1.2.4.1 Vorbereitung des Linux-Systems mit oracle-rdbms-server-12cR1-preinstall;37
3.2.4.2;1.2.4.2 Manuelle Vorbereitung;38
3.2.4.3;1.2.4.3 Zusätzliche Vorbereitungen;39
3.3;1.3 Die Installation;42
3.3.1;1.3.1 Software und Datenbankinstallation mit OUI;42
3.3.2;1.3.2 Datenbankinstallation mit DBCA;49
3.4;1.4 Grundlagen der Oracle-Administration;55
3.4.1;1.4.1 Administrationswerkzeuge;56
3.4.2;1.4.2 Das Grundwerkzeug SQLPlus;57
3.4.2.1;1.4.2.1 Anmelden an SQLPlus;57
3.4.2.2;1.4.2.2 SQL und SQLPlus-Befehle;57
3.4.2.3;1.4.2.3 SQLPlus-Befehle;58
3.4.3;1.4.3 Die Standardadministratoren;58
3.4.3.1;1.4.3.1 Anmelden als SYSDBA;59
3.4.4;1.4.4 Starten der Datenbankinstanz;61
3.4.5;1.4.5 Beenden der Datenbankinstanz;62
3.4.6;1.4.6 Initialisierungsparameter;63
3.4.6.1;1.4.6.1 Ändern von Session-Parametern;63
3.4.6.2;1.4.6.2 Ändern von System-Parametern;64
3.4.7;1.4.7 Das Listener Control;65
3.4.8;1.4.8 Oracle Enterprisemanager Express;66
3.4.9;1.4.9 Der SQLDeveloper;68
3.5;1.5 Online-Hilfe (My Oracle Support);72
3.6;1.6 Die Oracle-Dokumentation;74
4;2 Architektur und Administration;76
4.1;2.1 Datenbank und Instanz;77
4.2;2.2 Physische Architektur einer Oracle-Datenbank;78
4.2.1;2.2.1 Datenblöcke;81
4.2.2;2.2.2 Datafiles;83
4.2.3;2.2.3 Tablespaces;84
4.2.4;2.2.4 Informationen zu Tablespaces im Data Dictionary;88
4.2.5;2.2.5 Empfehlungen zum Tablespace-Layout;88
4.2.6;2.2.6 Redo Logs;90
4.2.7;2.2.7 Controlfiles;92
4.2.8;2.2.8 Parameterfile;94
4.2.9;2.2.9 Passwordfile;95
4.2.10;2.2.10 Alert- und Trace-Dateien;95
4.2.11;2.2.11 Flashback Logs;97
4.2.12;2.2.12 Block-Change-Tracking-Protokoll;98
4.3;2.3 Instanz: Arbeitsspeicher- und Prozessarchitektur;99
4.3.1;2.3.1 System Global Area (SGA);99
4.3.2;2.3.2 Program Global Area (PGA);105
4.3.3;2.3.3 Memory Management;106
4.3.4;2.3.4 Prozesse;109
4.3.5;2.3.5 Prozesse auf Linux/Unix;113
4.3.6;2.3.6 Prozesse auf Windows-Systemen;113
4.3.7;2.3.7 Prozessarchitektur mit Oracle 12c: Multithreads;114
4.4;2.4 Konsistenz der Datenbank;114
4.4.1;2.4.1 Transaktionsmanagement;114
4.4.2;2.4.2 Lesekonsistenz;115
4.4.3;2.4.3 Undo Management;115
4.4.4;2.4.4 Sperren;116
4.4.5;2.4.5 Isolation Level;117
4.4.6;2.4.6 System Change Number (SCN);117
4.4.7;2.4.7 Checkpoints;118
4.4.8;2.4.8 Crash Recovery;120
4.5;2.5 Start und Stopp einer Oracle-Datenbank;121
4.5.1;2.5.1 Phasen während des Startup;121
4.5.2;2.5.2 Phasen während des Shutdowns;123
4.5.3;2.5.3 Startup-Befehle;124
4.5.4;2.5.4 Shutdown-Befehle;127
4.6;2.6 Verwaltung von Tablespaces;129
4.6.1;2.6.1 Informationen zu bestehenden Tablespaces ermitteln;129
4.6.2;2.6.2 Tablespaces erstellen;133
4.6.3;2.6.3 Tablespace umbenennen;136
4.6.4;2.6.4 Tablespaces vergrößern und verkleinern;137
4.6.5;2.6.5 Datafiles zu Tablespaces hinzufügen;139
4.6.6;2.6.6 Datafiles verschieben oder umbenennen;139
4.6.7;2.6.7 Tablespaces löschen;141
4.6.8;2.6.8 Datafiles löschen;142
4.6.9;2.6.9 Default- und Temporary-Tablespace für Benutzer setzen;142
4.6.10;2.6.10 Offline- und Online-Setzen eines Tablespaces;143
4.6.11;2.6.11 Read-Only- und Read-Write-Setzen;144
4.6.12;2.6.12 Aktivieren und Deaktivieren des Logging für Tablespace;145
4.6.13;2.6.13 Verwaltung von Undo Tablespaces;146
4.6.14;2.6.14 Verwaltung von Temporary Tablespaces;153
4.7;2.7 Verwaltung von Redo Logs;156
4.7.1;2.7.1 Informationen zu Redo Logs aus dem Data Dictionary ermitteln;156
4.7.2;2.7.2 Redo Log-Historie;157
4.7.3;2.7.3 Empfehlungen zur Konfiguration von Redo Logs;157
4.7.4;2.7.4 Anlegen einer Redo Log-Gruppe;159
4.7.5;2.7.5 Hinzufügen eines weiteren Mitglieds zu einer bestehenden Gruppe;160
4.7.6;2.7.6 Löschen eines Mitglieds einer Redo Log-Gruppe;160
4.7.7;2.7.7 Löschen einer Redo Log-Gruppe;160
4.7.8;2.7.8 Wechseln der Redo Log-Gruppe;161
4.7.9;2.7.9 Verschieben und Umbenennen von Redo Logs;161
4.7.10;2.7.10 Logfiles bereinigen;162
4.7.11;2.7.11 Redo Logs für Real Application Clusters (RAC);162
4.7.12;2.7.12 Der Archive Log-Modus;163
4.8;2.8 Verwaltung der Controlfiles;165
4.8.1;2.8.1 Informationen zu Controlfiles ermitteln;165
4.8.2;2.8.2 Controlfiles spiegeln;165
4.8.3;2.8.3 Controlfiles durch eine Kopie sichern;166
4.8.4;2.8.4 Controlfiles mit einem Trace dumpen;166
4.9;2.9 Parametrisierung;168
4.9.1;2.9.1 Der Startvorgang mit Parameterfile;168
4.9.2;2.9.2 Welche Parameterdatei wird aktuell verwendet?;169
4.9.3;2.9.3 Ändern der Parametrisierung;169
4.9.4;2.9.4 Zurücksetzen eines Parameters;170
4.9.5;2.9.5 Probleme bei der Änderung der Parametrisierung;171
4.9.6;2.9.6 Aktuelle Parametrisierung ermitteln;171
4.9.7;2.9.7 Parameter zur Datenbank- und Instanz-Konfiguration;172
4.9.8;2.9.8 Verdeckte Parameter;174
4.9.9;2.9.9 PFiles und SPFiles erzeugen;174
4.10;2.10 Passwort-Dateien verwalten;175
4.10.1;2.10.1 Passwort-Datei erstellen;175
4.10.2;2.10.2 Passwort-Dateien und Datenbankparameter;176
4.10.3;2.10.3 Privilegierte Benutzer einer Passwort-Datei hinzufügen und entfernen;176
4.11;2.11 Weitere Administrationsbefehle;177
4.11.1;2.11.1 Ändern des Globalen Namens der Datenbank;177
4.11.2;2.11.2 Ändern des Zeichensatzes;177
4.11.3;2.11.3 Benutzerverbindungen beenden: Kill Session;179
4.11.4;2.11.4 Benutzerverbindungen beenden: Disconnect Session;180
4.11.5;2.11.5 Benutzersessions sperren: Restricted Mode;181
4.11.6;2.11.6 Benutzeraktionen unterbinden: Quiesce Restricted;182
4.11.7;2.11.7 Einen Checkpoint erzwingen;183
4.11.8;2.11.8 Den Blockpuffer leeren: Flush buffer_cache;183
4.11.9;2.11.9 Den Shared Pool leeren: Flush shared_pool;183
4.11.10;2.11.10 Den Inhalt eines Datenblockes dumpen;184
4.12;2.12 Informationen zur Datenbank ermitteln;185
4.12.1;2.12.1 Statische Data Dictionary Views;185
4.12.2;2.12.2 Dynamische Performance Views;186
4.12.3;2.12.3 Allgemeine Informationen zur Datenbank;188
4.12.4;2.12.4 Startzeit und Status der Instanz;188
4.12.5;2.12.5 Hostname und Instanz-Name;188
4.12.6;2.12.6 Spracheinstellungen und Zeichensätze;188
4.12.7;2.12.7 Aktuelle Datenbankversion;189
4.12.8;2.12.8 Installierte Oracle-Optionen;189
4.12.9;2.12.9 Größen der Caches der SGA;189
4.12.10;2.12.10 Pfad zu Trace-Dateien und Alert-Log;190
4.12.11;2.12.11 Datenbank-Benutzer;191
4.12.12;2.12.12 Rechte und Rollen eines Datenbank-Benutzers;191
4.12.13;2.12.13 Datenbankobjekte;192
4.12.14;2.12.14 Offene Datenbankverbindungen;192
4.12.15;2.12.15 Aktive Sessions;193
4.12.16;2.12.16 SQL-Statement nach Session;193
4.12.17;2.12.17 Waits;193
4.12.18;2.12.18 Langlaufende Operationen;194
4.12.19;2.12.19 Sperren in der Datenbank;194
4.12.20;2.12.20 Die aktuelle System Change Number (SCN) ermitteln;195
4.13;2.13 Resümee;195
5;3 Verwaltung von Datenbankobjekten;196
5.1;3.1 Benutzer und Schemata;197
5.2;3.2 Bezeichner;197
5.3;3.3 Speicherhierarchie;198
5.4;3.4 Zeichensätze;200
5.5;3.5 Datentypen;203
5.6;3.6 Speicherorganisation von Tabellen;204
5.6.1;3.6.1 Heap Tables;204
5.6.2;3.6.2 Index Organized Tables (IOTs);205
5.6.3;3.6.3 Object Tables;206
5.6.4;3.6.4 Global Temporary Tables;208
5.6.5;3.6.5 External Tables;209
5.6.6;3.6.6 Geclusterte Tabellen;210
5.6.6.1;3.6.6.1 Index-Cluster;211
5.6.6.2;3.6.6.2 Hash-Cluster;212
5.6.6.3;3.6.6.3 Sorted Hash-Cluster;212
5.6.7;3.6.7 Tabellenkomprimierung;213
5.6.8;3.6.8 Tabellenpartitionierung;213
5.7;3.7 Administrationsbefehle für Tabellen;214
5.7.1;3.7.1 Tabellen erstellen;214
5.7.2;3.7.2 Erstellen einer Tabelle aus einem Select-Statement;214
5.7.3;3.7.3 Tabellen kopieren;215
5.7.4;3.7.4 Tabellennamen ändern;215
5.7.5;3.7.5 Tabelleneigenschaften ändern;216
5.7.6;3.7.6 Löschen einer Tabelle;216
5.7.7;3.7.7 Tablespace zuordnen;216
5.7.8;3.7.8 Eine Tabelle in einen anderen Tablespace verschieben;217
5.7.9;3.7.9 Extent-Größen festlegen;218
5.7.10;3.7.10 Einstellen der Größe des Transaktionsheaders;218
5.7.11;3.7.11 Verzögerte Speicherallokation/Deferred Segment Creation;220
5.7.12;3.7.12 Cache/Nocache/Cache Reads;220
5.7.13;3.7.13 Logging und Nologging;221
5.7.14;3.7.14 Parallelisierung;222
5.7.15;3.7.15 Schreibschutz für Tabellen: Read only/Read write;223
5.7.16;3.7.16 Spalten hinzufügen;223
5.7.17;3.7.17 Spaltennamen ändern;223
5.7.18;3.7.18 Default-Werte für Spalten vergeben;224
5.7.19;3.7.19 Spaltendefinitionen ändern;224
5.7.20;3.7.20 Spalten physisch löschen;225
5.7.21;3.7.21 Spalten logisch löschen;226
5.7.22;3.7.22 Speicherplatz einer Tabelle ermitteln;226
5.7.23;3.7.23 Speicherplatz freigeben;227
5.7.24;3.7.24 Tabellen leeren mit Truncate Table;229
5.7.25;3.7.25 Wichtige Rechte rund um Tabellen;230
5.7.26;3.7.26 Informationen zu Tabellen und Spalten im Data Dictionary;231
5.8;3.8 Constraints;232
5.8.1;3.8.1 Not Null;233
5.8.2;3.8.2 Unique;233
5.8.3;3.8.3 Primary Key;234
5.8.4;3.8.4 Foreign Key;234
5.8.5;3.8.5 Check-Contraints;236
5.8.6;3.8.6 Aktivierung und Deaktivierung von Constraints;236
5.8.7;3.8.7 Verzögerte Überprüfung;238
5.8.8;3.8.8 Umbenennen von Constraints;238
5.8.9;3.8.9 Entfernen von Constraints;239
5.8.10;3.8.10 Wichtige Rechte rund um Constraints;239
5.8.11;3.8.11 Informationen zu Constraints im Data Dictionary;239
5.9;3.9 Views;240
5.9.1;3.9.1 Standard-Views;241
5.9.2;3.9.2 Materialized Views;242
5.9.3;3.9.3 Objekt-Views;243
5.9.4;3.9.4 Wichtige Rechte rund um Views;243
5.9.5;3.9.5 Informationen zu Views im Data Dictionary;244
5.10;3.10 Indizes;244
5.10.1;3.10.1 B*Baum;245
5.10.2;3.10.2 Bitmap Index;247
5.10.3;3.10.3 Reverse Key Index;248
5.10.4;3.10.4 Funktionsbasierter Index;248
5.10.5;3.10.5 Unique Index;249
5.10.6;3.10.6 Online-Erstellung eines Index;250
5.10.7;3.10.7 Speicherparameter: Tablespace und Extentgrößen;250
5.10.8;3.10.8 Einstellen der Größe des Transaktionsheaders;251
5.10.9;3.10.9 Reorganisation/Index Rebuild;252
5.10.10;3.10.10 Speicherplatz eines Index ermitteln;253
5.10.11;3.10.11 Speicherplatz freigeben;253
5.10.12;3.10.12 Deaktivieren eines Index;254
5.10.13;3.10.13 Invisible Index;255
5.10.14;3.10.14 Logging;256
5.10.15;3.10.15 Parallelisierung;257
5.10.16;3.10.16 Umbenennen eines Index;257
5.10.17;3.10.17 Monitoring der Index-Nutzung;258
5.10.18;3.10.18 Wichtige Rechte rund um Indizes;259
5.10.19;3.10.19 Informationen zu Indizes im Data Dictionary;259
5.11;3.11 Synonyme;259
5.11.1;3.11.1 Public Synonym;260
5.11.2;3.11.2 Wichtige Rechte rund um Synonyme;260
5.11.3;3.11.3 Informationen zu Synonymen im Data Dictionary;260
5.12;3.12 Datenbank-Links;261
5.12.1;3.12.1 Public Database-Link;262
5.12.2;3.12.2 Verbindungsdescriptor zur Remote-Datenbank;262
5.12.3;3.12.3 Rechte zu Datenbank-Links;262
5.12.4;3.12.4 Informationen zu Datenbank-Links im Data Dictionary;263
5.13;3.13 Sequenzen;263
5.13.1;3.13.1 Rechte zu Sequenzen;264
5.13.2;3.13.2 Informationen zu Sequenzen im Data Dictionary;264
5.14;3.14 PL/SQL-Programme;265
5.14.1;3.14.1 Stored Procedures/Functions;265
5.14.2;3.14.2 Packages;265
5.14.3;3.14.3 Trigger;265
5.14.4;3.14.4 Wichtige Rechte rund um PL/SQL-Programme;266
5.14.5;3.14.5 Informationen zu PL/SQL-Programmen im Data Dictionary;266
5.15;3.15 Resümee;266
6;4 Speicherplatzverwaltung;268
6.1;4.1 Datenbankspeicheroptionen;269
6.1.1;4.1.1 Eigenschaften eines Speichersystems;270
6.1.1.1;4.1.1.1 Verwaltung;270
6.1.1.2;4.1.1.2 Verfügbarkeit;271
6.1.1.3;4.1.1.3 Performance;271
6.1.1.4;4.1.1.4 Zugriff;273
6.1.2;4.1.2 Filesysteme;273
6.1.2.1;4.1.2.1 Verwaltung;274
6.1.2.2;4.1.2.2 Verfügbarkeit;275
6.1.2.3;4.1.2.3 Performance;275
6.1.2.4;4.1.2.4 Zugriff;275
6.1.3;4.1.3 Automatic Storage Management;276
6.1.3.1;4.1.3.1 Verwaltung;276
6.1.3.2;4.1.3.2 Verfügbarkeit;277
6.1.3.3;4.1.3.3 Performance;277
6.1.3.4;4.1.3.4 Zugriff;277
6.1.4;4.1.4 Die Auswahl der Datenbankspeicheroption;277
6.2;4.2 Data-, Temp- und Redo Log-File-Attribute;278
6.2.1;4.2.1 Initial Size;278
6.2.2;4.2.2 Automatische Filevergrößerung;280
6.2.3;4.2.3 Manuelle Filevergrößerung;280
6.3;4.3 Extent-Management-Optionen;281
6.3.1;4.3.1 Extent Map;282
6.3.2;4.3.2 Storage-Parameter;282
6.3.3;4.3.3 Extent-Allozierung;283
6.3.3.1;4.3.3.1 Deferred Segment Creation;283
6.3.3.2;4.3.3.2 Parallele Inserts;284
6.3.4;4.3.4 Dictionary Managed Tablespaces;285
6.3.5;4.3.5 Locally Managed Tablespaces;286
6.3.5.1;4.3.5.1 Uniform Extent Size;287
6.3.5.2;4.3.5.2 System Managed Extent Size;288
6.3.5.3;4.3.5.3 Smallfile- vs. Bigfile-Tablespaces;289
6.3.6;4.3.6 Auswahl der Extent-Management-Optionen;290
6.4;4.4 Segmentspace-Verwaltung;292
6.4.1;4.4.1 High-Water Mark;292
6.4.2;4.4.2 Manuelle Segmentspace-Verwaltung;294
6.4.3;4.4.3 Automatische Segmentspace-Verwaltung;296
6.4.4;4.4.4 Auswahl einer Segmentspace-Verwaltungsoption;299
6.5;4.5 Zusätzliche Segmentoptionen;299
6.5.1;4.5.1 Interested Transaction List (ITL);299
6.5.2;4.5.2 Minimal Logging;301
6.6;4.6 Reorganisationen;303
6.6.1;4.6.1 Datensatzmigration und Datensatzverkettung;303
6.6.2;4.6.2 Verschieben von Segmenten;306
6.6.3;4.6.3 Verschieben von Tabelleninhalten;307
6.6.4;4.6.4 Rückgewinnung von freiem Platz;309
6.7;4.7 Resümee;310
7;5 Oracle Multitenant;312
7.1;5.1 Die Container-Datenbank-Architektur;312
7.1.1;5.1.1 Unterschiede zur klassischen Architektur;313
7.1.2;5.1.2 Die Architektur;315
7.1.3;5.1.3 Verzeichnisstrukturen und Dateinamen;317
7.1.4;5.1.4 Verfügbare Datenbankvarianten in Oracle 12c;318
7.2;5.2 Anlegen einer Container-Datenbank;319
7.2.1;5.2.1 CDB anlegen mit dem DBCA;319
7.2.2;5.2.2 CDB anlegen mit SQL-Skript;320
7.3;5.3 Aufteilung der Zuständigkeiten;322
7.4;5.4 Anlegen einer Pluggable-Datenbank;323
7.5;5.5 Kopieren von Pluggable-Datenbanken;325
7.5.1;5.5.1 Kopieren einer lokalen PDB;325
7.5.2;5.5.2 Remote Cloning;326
7.5.3;5.5.3 Metadata Cloning;327
7.5.4;5.5.4 Subset Cloning;327
7.5.5;5.5.5 Snapshot Cloning;328
7.6;5.6 Zugriff auf Pluggable-Datenbanken;329
7.7;5.7 Administration von Pluggable-Datenbanken;330
7.7.1;5.7.1 Öffnen und Schließen von PDBs;331
7.7.2;5.7.2 Droppen von PDBs;332
7.7.3;5.7.3 Verschieben von PDBs;332
7.7.4;5.7.4 Benutzer- und Rechteverwaltung;335
7.7.5;5.7.5 PDB-übergreifende Operationen;337
7.7.6;5.7.6 Upgrades in der CDB-Architektur;337
7.7.7;5.7.7 Parameter;338
7.7.8;5.7.8 Änderungen im Data Dictionary;339
7.7.9;5.7.9 Werkzeuge;341
7.7.9.1;5.7.9.1 Enterprise Manager 12c Cloud Control;341
7.7.9.2;5.7.9.2 Enterprise Manager 12c Database Express;341
7.8;5.8 Backup & Restore von Container-Datenbanken;343
7.9;5.9 Migration zur CDB-Architektur;345
7.9.1;5.9.1 Clonen einer Nicht-CDB als PDB;346
7.9.2;5.9.2 Einhängen einer Nicht-CDB als PDB;346
7.10;5.10 Verschiedenes;346
7.10.1;5.10.1 CDB im RAC;346
7.10.2;5.10.2 CDB & DataGuard;347
7.10.3;5.10.3 Ressourcenmanagement;348
7.11;5.11 Einsatzmöglichkeiten;349
7.11.1;5.11.1 Database as a Service (DBaaS);349
7.11.1.1;5.11.1.1 EM 12c Cloud Management Pack for Oracle Database;349
7.11.1.2;5.11.1.2 Apex-Provisioning Tool;350
7.11.2;5.11.2 Entwicklungsdatenbanken;350
7.11.3;5.11.3 „Sammeldatenbanken“;351
7.12;5.12 Zusammenfassung;351
8;6 Security;352
8.1;6.1 Authentifizierung;353
8.1.1;6.1.1 Datenbankauthentifizierung;353
8.1.1.1;6.1.1.1 Passwörter und Password Hash;353
8.1.1.2;6.1.1.2 Authentifizierungsprotokoll;356
8.1.1.3;6.1.1.3 Protokollierung der Logins;357
8.1.1.4;6.1.1.4 Passwortprofile;358
8.1.1.5;6.1.1.5 Standardbenutzer, globale und lokale Benutzer;362
8.1.2;6.1.2 Betriebssystemauthentifizierung;363
8.1.3;6.1.3 Proxy-Authentifizierung;364
8.1.4;6.1.4 Kerberos;367
8.1.5;6.1.5 Authentifizierung per SSL und Zertifikaten;369
8.1.6;6.1.6 Enterprise User Security;372
8.2;6.2 Autorisierung;375
8.2.1;6.2.1 Systemprivilegien;375
8.2.2;6.2.2 Objektprivilegien;377
8.2.3;6.2.3 Administrative Privilegien;378
8.2.4;6.2.4 Berechtigungen auf Directories;382
8.2.5;6.2.5 Netzwerkzugriff;382
8.2.6;6.2.6 Rollen;384
8.2.6.1;6.2.6.1 Rollenkonzept;384
8.2.6.2;6.2.6.2 Passwortgeschützte Rollen;385
8.2.6.3;6.2.6.3 Secure Application Role;386
8.2.7;6.2.7 Überwachung von Privilegien;387
8.2.8;6.2.8 Virtual Private Database;389
8.2.8.1;6.2.8.1 Default Behavior;392
8.2.8.2;6.2.8.2 Column Masking Behavior;393
8.2.9;6.2.9 Database Vault;393
8.3;6.3 Auditing;397
8.3.1;6.3.1 Standard-Auditing;399
8.3.1.1;6.3.1.1 Statement- und Privilegien-Auditing;400
8.3.1.2;6.3.1.2 Objekt-Auditing;401
8.3.1.3;6.3.1.3 Auswertungen;401
8.3.1.4;6.3.1.4 Weitere Klauseln des Audit-Befehls;403
8.3.1.5;6.3.1.5 Ausschalten des Audits;404
8.3.1.6;6.3.1.6 Audit für administrative Benutzer;404
8.3.2;6.3.2 Unified Auditing;405
8.3.3;6.3.3 Audit Policies;410
8.3.4;6.3.4 Trigger-basiertes Audit;414
8.3.4.1;6.3.4.1 Event-Trigger;414
8.3.4.2;6.3.4.2 DML-Trigger;415
8.3.5;6.3.5 Fine-Grained Auditing;415
8.3.6;6.3.6 Verwalten der Audit-Informationen;417
8.3.7;6.3.7 Audit Vault und Database Firewall;420
8.4;6.4 Vertraulichkeit der Daten;423
8.4.1;6.4.1 Data Redaction;423
8.4.2;6.4.2 Verschlüsselung der Oracle-Dateien;427
8.4.2.1;6.4.2.1 Oracle Wallet;427
8.4.2.2;6.4.2.2 Verschlüsselung auf Spaltenebene;431
8.4.2.3;6.4.2.3 Verschlüsselung auf Tablespace-Ebene;433
8.4.3;6.4.3 Verschlüsselung und Integritätsprüfung des Netzwerkverkehrs;436
8.4.3.1;6.4.3.1 Verschlüsselung;436
8.4.3.2;6.4.3.2 Integritätsprüfung;439
8.4.3.3;6.4.3.3 SSL-Verschlüsselung;441
8.5;6.5 Resümee;443
9;7 Automatic Storage Management;444
9.1;7.1 Die ASM-Architektur im Überblick;445
9.2;7.2 Eine ASM-Umgebung konfigurieren;446
9.2.1;7.2.1 Die Software bereitstellen;446
9.2.2;7.2.2 Manuelle ASM-Konfiguration;447
9.2.3;7.2.3 ASM-Disks auf spezifischen Plattformen;449
9.2.3.1;7.2.3.1 AIX;449
9.2.3.2;7.2.3.2 Solaris;450
9.2.3.3;7.2.3.3 Linux;450
9.2.3.4;7.2.3.4 Windows;451
9.2.4;7.2.4 Der Discovery-Prozess;452
9.2.5;7.2.5 Der ASMCA;453
9.2.6;7.2.6 ASM im Enterprise Manager 11g und Cloud Control 12c/13c;455
9.3;7.3 ASM-Disks, -Diskgruppen und -Fehlergruppen;456
9.4;7.4 Das Utility ASMCMD;461
9.5;7.5 ASM-Sicherheit;463
9.6;7.6 ASM Monitoring, Performance und Troubleshooting;464
9.7;7.7 Eine Datenbank nach ASM konvertieren;469
9.8;7.8 Das ASM Cluster File-System (ACFS);473
9.8.1;7.8.1 General Purpose ACFS-Dateisystem;474
9.8.2;7.8.2 CRS Managed ACFS-Dateisystem;475
9.8.3;7.8.3 ACFS Snapshots;476
9.8.4;7.8.4 ACFS verwalten;477
9.9;7.9 Oracle Flex ASM;478
9.9.1;7.9.1 Architektur;478
9.9.2;7.9.2 Aktivierung von Flex ASM;479
9.9.3;7.9.3 Verwaltung von Flex ASM;479
9.10;7.10 Resümee;480
10;8 Optimierung;482
10.1;8.1 Designing for Performance;482
10.1.1;8.1.1 Unzulänglichkeiten im logischen Datenbankdesign;483
10.1.2;8.1.2 Implementation von generischen Tabellen;483
10.1.3;8.1.3 Verzicht auf Constraints;484
10.1.4;8.1.4 Unzulängliches physisches Datenbankdesign;484
10.1.5;8.1.5 Falsche Datentypauswahl;485
10.1.6;8.1.6 Inkorrekte Verwendung von Bind-Variablen;485
10.1.7;8.1.7 Fehlender Einsatz von Advanced Datenbankfeatures;486
10.1.8;8.1.8 Fehlende Verwendung von Stored-Procedures;487
10.1.9;8.1.9 Ausführung von unnötigen Commits;487
10.1.10;8.1.10 Häufiges Öffnen und Schließen von Datenbankverbindungen;487
10.1.11;8.1.11 Öffnen von zu vielen Datenbankverbindungen;488
10.2;8.2 Konfigurationsempfehlungen;488
10.2.1;8.2.1 Initialisierungsparameter;489
10.2.1.1;8.2.1.1 Speicher-Subsystem;489
10.2.1.2;8.2.1.2 Arbeitsspeicher;490
10.2.1.3;8.2.1.3 Optimizer;493
10.2.2;8.2.2 Systemstatistiken;495
10.2.3;8.2.3 Objektstatistiken;497
10.3;8.3 Vorgehen bei Performance-Problemen;498
10.3.1;8.3.1 Probleme einordnen;499
10.3.2;8.3.2 Probleme lösen;500
10.4;8.4 Identifikation von Performance-Problemen;500
10.4.1;8.4.1 Analyse von reproduzierbaren Problemen;501
10.4.2;8.4.2 Echtzeitanalyse von nichtreproduzierbaren Problemen;509
10.4.2.1;8.4.2.1 Analyse mit dem Diagnostics Pack;509
10.4.2.2;8.4.2.2 Analyse ohne Diagnostics Pack;514
10.4.3;8.4.3 Nachträgliche Analyse von nichtreproduzierbaren Problemen;521
10.4.3.1;8.4.3.1 Analyse mit dem Automatic Workload Repository;521
10.4.3.2;8.4.3.2 Analyse mit dem Statspack;522
10.5;8.5 Ausführungspläne;527
10.5.1;8.5.1 Ermittlung des Ausführungsplans;527
10.5.1.1;8.5.1.1 SQL-Befehl EXPLAIN PLAN;527
10.5.1.2;8.5.1.2 Dynamische Performance Views;529
10.5.1.3;8.5.1.3 Real-time Monitoring;531
10.5.1.4;8.5.1.4 Automatic Workload Repository und Statspack;533
10.5.2;8.5.2 Interpretation von Ausführungsplänen;534
10.5.3;8.5.3 Erkennen von ineffizienten Ausführungsplänen;537
10.6;8.6 Methoden zur Lösung von Performanceproblemen;541
10.6.1;8.6.1 Verhinderung unnötiger Arbeit;541
10.6.2;8.6.2 Datenbankaufrufe schneller machen;542
10.6.2.1;8.6.2.1 Änderung der Zugriffsstrukturen;542
10.6.2.2;8.6.2.2 Änderung der SQL-Statements;543
10.6.2.3;8.6.2.3 Ändern der Runtime-Umgebung;543
10.6.2.4;8.6.2.4 Ändern des Ausführungsplans;543
10.6.2.5;8.6.2.5 Einsatz von Advanced-Features;543
10.6.2.6;8.6.2.6 Verhinderung von Contention;544
10.6.3;8.6.3 Ressourcenverwaltung;545
10.6.4;8.6.4 Hardware-Upgrade;545
10.7;8.7 Resümee;546
11;9 Monitoring;548
11.1;9.1 Monitoring-Architektur;549
11.1.1;9.1.1 Automatic Diagnostic Repository;550
11.1.2;9.1.2 ADRCI – die Schnittstelle zum ADR;551
11.1.3;9.1.3 Health Monitor;553
11.1.4;9.1.4 Incident Package Service (IPS);554
11.1.5;9.1.5 Enterprise Manager Support Workbench;556
11.1.6;9.1.6 Automatic Workload Repository (AWR);556
11.2;9.2 Monitoring-Datenbasis;557
11.2.1;9.2.1 Alert-Log;557
11.2.2;9.2.2 Tracefiles, Dumps und Corefiles;558
11.2.3;9.2.3 Data Dictionary Views;558
11.2.4;9.2.4 Datenbankmetriken;559
11.2.5;9.2.5 Server Generated Alerts;561
11.2.6;9.2.6 Baseline Metric Thresholds und Adaptive Thresholds;562
11.2.7;9.2.7 Metric Extensions;563
11.2.8;9.2.8 Compliance Management;564
11.3;9.3 Monitoring von Oracle-Datenbanken;566
11.3.1;9.3.1 Überwachung der Serviceverfügbarkeit;566
11.3.2;9.3.2 ORA-Fehlermeldungen und Alerts;567
11.3.3;9.3.3 Monitoring der Systemaktivität;569
11.3.4;9.3.4 Platzüberwachung;571
11.3.4.1;9.3.4.1 Überwachung von Tablespaces;571
11.3.4.2;9.3.4.2 Überwachung der Fast Recovery Area;573
11.3.4.3;9.3.4.3 Überwachung von ASM;574
11.3.5;9.3.5 Monitoring von SQL-Befehlen/Performance;574
11.3.6;9.3.6 Monitoring der CPU-Auslastung;576
11.3.7;9.3.7 Monitoring von RMAN-Backups;577
11.3.7.1;9.3.7.1 Backup-Überwachung mit dem Enterprise Manager;577
11.3.7.2;9.3.7.2 Backup-Überwachung mit SQL*Plus;578
11.3.7.3;9.3.7.3 Monitoring der Aktualität der RMAN-Backups;578
11.3.7.4;9.3.7.4 Monitoring der RMAN-Performance;579
11.3.7.5;9.3.7.5 Monitoring des Backup-Volumens;579
11.3.7.6;9.3.7.6 Monitoring von RMAN-Jobs;580
11.3.8;9.3.8 Überwachung von Konfigurationsänderungen;581
11.3.9;9.3.9 Überwachung von Locking-Situationen;582
11.3.10;9.3.10 Best-Practice (Basis-Monitoring);583
11.4;9.4 Monitoring-Werkzeuge;586
11.4.1;9.4.1 Enterprise Manager Database Express 12c;586
11.4.2;9.4.2 Enterprise Manager Cloud Control;587
11.4.3;9.4.3 SQL Developer;588
11.4.4;9.4.4 Auswahlkriterien für Monitoring-Werkzeuge;589
11.5;9.5 Resümee;590
12;10 Aufbau und Betrieb eines Datenbankservers;592
12.1;10.1 Überlegungen zum Aufbau und Betrieb eines Datenbankservers;592
12.2;10.2 Wahl der Oracle-Plattform;594
12.3;10.3 Betriebssystembenutzer und Berechtigungen;596
12.3.1;10.3.1 Software-Owner und Betriebssystembenutzer;596
12.3.2;10.3.2 Home-Verzeichnis der User „oracle“ und „grid“;597
12.3.3;10.3.3 Betriebssystemgruppen;597
12.3.4;10.3.4 File-Permissions, Ownership und umask;599
12.4;10.4 Oracle-Verzeichnisstruktur;600
12.4.1;10.4.1 Optimal Flexible Architecture (OFA);600
12.4.2;10.4.2 Der OFA-Verzeichnisbaum;601
12.4.3;10.4.3 Die „/u00“-Philosophie;602
12.4.4;10.4.4 Mountpoints;602
12.4.5;10.4.5 ORACLE_BASE;603
12.4.6;10.4.6 ORACLE_HOME;603
12.4.7;10.4.7 Shared-Home-Installationen;603
12.4.8;10.4.8 Multi-Home-Installationen;604
12.4.9;10.4.9 Oracle Universal Installer Inventory;604
12.4.10;10.4.10 Automatic Diagnostic Repository (ADR);605
12.5;10.5 Verwaltung des Oracle-Environment;605
12.6;10.6 Betrieb eines Oracle-Datenbankservers;606
12.6.1;10.6.1 Monitoring & Reporting;607
12.6.2;10.6.2 Backup & Recovery;607
12.6.3;10.6.3 Datenbank-Maintenance;608
12.6.4;10.6.4 Weitere Betriebsaufgaben;609
12.6.5;10.6.5 Das Betriebshandbuch;610
12.7;10.7 Resümee;611
13;11 Backup und Recovery;612
13.1;11.1 Übersicht;612
13.1.1;11.1.1 Entwicklung eines Sicherungskonzepts;613
13.1.2;11.1.2 Offline- und Online-Sicherung;614
13.1.3;11.1.3 Logische und physische Sicherung;614
13.1.4;11.1.4 Restore und Recovery;615
13.1.5;11.1.5 Vollsicherung, inkrementelle und differenzielle Sicherung;615
13.1.6;11.1.6 Flash/Fast Recovery Area;615
13.1.7;11.1.7 Oracle-Backup- und Recovery-Lösungen und Werkzeuge;616
13.2;11.2 User-Managed Sicherungen;616
13.2.1;11.2.1 Backup-Informationen aus V$Views;616
13.2.2;11.2.2 Offline-Sicherung der ganzen Datenbank;618
13.2.3;11.2.3 Online-Sicherung der ganzen Datenbank;620
13.2.4;11.2.4 Backup der PDBs;620
13.2.5;11.2.5 Backup Tablespace und Datenfiles;621
13.2.6;11.2.6 Backup Controlfile;622
13.2.7;11.2.7 Backup der archivierten Redo Log-Dateien;623
13.2.8;11.2.8 Backup ASM und RAW Devices;623
13.2.9;11.2.9 Backup mit Snapshot Technology;623
13.2.10;11.2.10 Backup-Troubleshooting;623
13.2.11;11.2.11 Wiederherstellung aus einer Betriebssystemsicherung;624
13.3;11.3 Recovery-Manager-(RMAN-)Sicherungen;626
13.3.1;11.3.1 RMAN-Architektur und ihre Komponenten;626
13.3.2;11.3.2 Aufruf und RMAN-Konfiguration;627
13.3.3;11.3.3 Sicherungsoptimierung;628
13.3.4;11.3.4 Backup-Sets und Image-Kopien;633
13.3.5;11.3.5 Der Recovery-Katalog und die Recovery-Katalog-Datenbank;634
13.3.6;11.3.6 Sicherung auf Band in einem Run-Block;637
13.3.7;11.3.7 Sicherung der Datenbank im Online- und Offline-Modus;640
13.3.8;11.3.8 Inkrementelle Sicherung der Datenbank;641
13.3.9;11.3.9 Sicherung der ganzen Datenbank;641
13.3.10;11.3.10 Sicherung der CDBs;642
13.3.11;11.3.11 Sicherung der PDBs;642
13.3.12;11.3.12 Sicherung Tablespaces und Datenfiles;643
13.3.13;11.3.13 Sicherung von archivierten Redo Log-Dateien;644
13.3.14;11.3.14 Sicherung Controlfile und Spfile;645
13.3.15;11.3.15 Langzeitsicherungen;646
13.3.16;11.3.16 Sicherungsdateien sichern;647
13.3.17;11.3.17 Backup-Pieces und Tags;648
13.3.18;11.3.18 Reports zu Sicherungen;649
13.3.19;11.3.19 Monitoren des RMAN-Job-Fortschritts und Fehler;649
13.3.20;11.3.20 Prüfung auf Korruptionen;650
13.3.21;11.3.21 Löschen alter Sicherungen;651
13.3.22;11.3.22 Virtual Private Catalog;652
13.4;11.4 RMAN-Wiederherstellung;653
13.4.1;11.4.1 Wiederherstellen eines Blocks;653
13.4.2;11.4.2 Wiederherstellen einzelner Tabellen;655
13.4.3;11.4.3 Wiederherstellen einer Datendatei;656
13.4.4;11.4.4 Wiederherstellen eines Tablespace;657
13.4.5;11.4.5 Wiederherstellen der Kontrolldateien;657
13.4.6;11.4.6 Wiederherstellen eines Root-Containers;659
13.4.7;11.4.7 Wiederherstellen einer Datenbank (CDB);659
13.4.8;11.4.8 Unvollständiges Wiederherstellen/Point in Time Recovery (PITR);660
13.4.9;11.4.9 Restore Points und garantierte Restore Points;660
13.4.10;11.4.10 Data Recovery Advisory (DRA);661
13.5;11.5 Oracle Flashback;663
13.5.1;11.5.1 Flashback Database und CDB;663
13.5.2;11.5.2 Flashback Table/Zurücksetzen einer Tabelle;664
13.5.3;11.5.3 Flashback Drop/Wiederherstellen einer gelöschten Tabelle;665
13.5.4;11.5.4 Flashback Transaction/Transaktionen zurücksetzen;665
13.6;11.6 Portabilität von Backups;667
13.7;11.7 Data Pump Export und Import;667
13.7.1;11.7.1 Übersicht;667
13.7.2;11.7.2 Befehle und Beispiele;669
13.7.3;11.7.3 Full Transportable Export/Import;672
13.7.4;11.7.4 Monitoring der Data-Pump-Jobs;673
13.8;11.8 Ausblick, Zusammenfassung;673
14;12 Verfügbarkeit;674
14.1;12.1 Übersicht Grid-Infrastruktur;674
14.2;12.2 Grid-Infrastruktur und Oracle Real Application Clusters (RAC);675
14.2.1;12.2.1 Architektur;676
14.2.2;12.2.2 Oracle Cluster Registry (OCR);677
14.2.3;12.2.3 Voting Devices;678
14.2.4;12.2.4 Prozesse;678
14.2.5;12.2.5 Logfiles;679
14.2.6;12.2.6 Grid Plug and Play (GPnP);679
14.2.7;12.2.7 Grid Naming Service (GNS);679
14.2.8;12.2.8 Single Client Access Name (SCAN);679
14.2.9;12.2.9 Installation;680
14.2.10;12.2.10 Administration;683
14.2.10.1;12.2.10.1 crsctl;683
14.2.10.2;12.2.10.2 Starten und Stoppen des Clusters;684
14.2.10.3;12.2.10.3 Autostart des Clusters aktivieren/deaktivieren;684
14.2.10.4;12.2.10.4 Prüfen des Cluster-Status;684
14.2.10.5;12.2.10.5 Prüfung von Ressourcen;684
14.2.10.6;12.2.10.6 Starten und Stoppen von Ressourcen;687
14.2.10.7;12.2.10.7 Voting Disks verwalten;689
14.2.10.8;12.2.10.8 Oracle Cluster Registry (OCR) verwalten;689
14.2.11;12.2.11 Server Pools;691
14.2.12;12.2.12 Administrator-managed und Policy-managed Cluster;692
14.2.13;12.2.13 Oracle Flex Cluster;692
14.2.13.1;12.2.13.1 Architektur;692
14.2.13.2;12.2.13.2 Umwandlung eines bestehenden Clusters in einen Flex Cluster;692
14.2.13.3;12.2.13.3 Administration von Flex Clustern;693
14.3;12.3 Oracle Restart;694
14.3.1;12.3.1 Architektur;695
14.3.2;12.3.2 Installation;695
14.3.3;12.3.3 Administration;696
14.4;12.4 Grid-Infrastruktur für Third-Party-Applikationen;698
14.4.1;12.4.1 Installation;698
14.4.2;12.4.2 Administration;698
14.5;12.5 RAC One Node;702
14.6;12.6 Oracle Data Guard;703
14.6.1;12.6.1 Architektur;704
14.6.1.1;12.6.1.1 Die Snapshot-Standby-Datenbank;706
14.6.2;12.6.2 Data Guard Services;706
14.6.3;12.6.3 Data Guard Protection Modes;708
14.6.4;12.6.4 Data Guard Broker;709
14.6.5;12.6.5 Verwaltungswerkzeuge;709
14.6.6;12.6.6 Hard- und Softwarevoraussetzungen;709
14.6.7;12.6.7 Verzeichnisstrukturen der Standby-Database;710
14.6.8;12.6.8 Vorbereitung der Primärdatenbank;710
14.6.9;12.6.9 Manuelle Erstellung der Physical-Standby-Datenbank;714
14.6.10;12.6.10 Erstellung der Physical-Standby-Datenbank mit RMAN DUPLICATE;716
14.6.11;12.6.11 Duplicate einer PDB- oder CDB-Datenbank;719
14.6.12;12.6.12 Überwachung der Physical-Standby-Datenbank;721
14.6.13;12.6.13 Real Time Apply und Standby-Logfiles;722
14.6.14;12.6.14 Starten und Stoppen des Redo Apply;723
14.6.15;12.6.15 Aktivierung des Data Guard Broker;723
14.6.16;12.6.16 Hinzufügen und Aktivieren von Standby-Datenbanken;726
14.6.17;12.6.17 Ändern von Konfigurationseinstellungen;726
14.6.18;12.6.18 Durchführen eines Switchover;729
14.6.19;12.6.19 Durchführen eines Failover;730
14.6.20;12.6.20 Far-Sync-Instanzen und Zero Data Loss;731
14.6.20.1;12.6.20.1 Real Time Cascade;733
14.6.21;12.6.21 Aufbau einer Logical Standby-Datenbank;735
15;13 Datenbank-Upgrades;736
15.1;13.1 Upgrade vs. Migration;738
15.2;13.2 Generelle Rahmenbedingen;738
15.3;13.3 Technische Planung;739
15.4;13.4 Überblick Upgrade-Methoden;742
15.5;13.5 Generell mögliche Upgrade-Pfade;747
15.6;13.6 Database Upgrade Assistant (DBUA);747
15.6.1;13.6.1 Software-Download;747
15.6.2;13.6.2 Datenbanksoftwareinstallation;748
15.6.3;13.6.3 Upgrade mithilfe des DBUA;749
15.6.4;13.6.4 Silent Upgrade;753
15.7;13.7 Manuelles Upgrade;753
15.7.1;13.7.1 Manuelles Upgrade im Detail;760
15.8;13.8 Downgrade;762
15.9;13.9 Best Practices Datenbank-Upgrade;764
15.10;13.10 Alternative Upgrade-Methoden;767
15.10.1;13.10.1 Original-Export- und -Import-Utilities (exp/imp);767
15.10.2;13.10.2 Export und Import mittels Data Pump;768
15.10.3;13.10.3 Transportable Tablespaces;770
15.11;13.11 Full Transportable Database;772
15.12;13.12 Komplexe Upgrade-Methoden;773
15.12.1;13.12.1 Copy Table (Create Table as select);774
15.12.2;13.12.2 Oracle Streams/Oracle Golden Gate;774
15.12.3;13.12.3 Upgrade mit logischer Standby-Datenbank;775
15.13;13.13 Datenbankkonvertierung auf 64 Bit;777
15.14;13.14 Wechsel von einer Standard Edition auf die Enterprise Edition;778
15.15;13.15 Wechsel von einer Enterprise Edition auf eine Standard Edition;779
15.16;13.16 Resümee;779
16;14 Globalization Support;780
16.1;14.1 Zeichensätze;780
16.1.1;14.1.1 Zeichensätze in der Datenbank;782
16.1.1.1;14.1.1.1 Database Character Set;783
16.1.1.2;14.1.1.2 National Character Set;783
16.1.2;14.1.2 Unicode;783
16.1.2.1;14.1.2.1 Was ist Unicode?;783
16.1.2.2;14.1.2.2 Unicode in der Oracle-Datenbank;784
16.1.3;14.1.3 Besonderheiten bei der Verwendung von Unicode als Datenbankzeichensatz;784
16.1.3.1;14.1.3.1 Längenangaben bei der Definition von Tabellenspalten;784
16.1.3.2;14.1.3.2 Zusätzliche SQL-Funktionen;786
16.1.3.3;14.1.3.3 ASCII-Funktion;787
16.1.3.4;14.1.3.4 Sortierung;787
16.1.4;14.1.4 Welcher Zeichensatz ist als „Database Character Set“ am besten geeignet?;787
16.1.5;14.1.5 Häufig verwendete Zeichensätze;788
16.1.6;14.1.6 Zeichensatzwechsel der Datenbank;789
16.1.6.1;14.1.6.1 Allgemeines;789
16.1.6.2;14.1.6.2 Werkzeuge für den Zeichensatzwechsel;789
16.1.6.3;14.1.6.3 csscan/csalter;790
16.1.6.4;14.1.6.4 Database Migration Assistant for Unicode (DMU);790
16.2;14.2 NLS-Einstellungen;797
16.2.1;14.2.1 NLS_LANG;797
16.2.2;14.2.2 NLS-Parameter;798
16.2.3;14.2.3 Abhängigkeiten;800
16.3;14.3 Zeit & Datum;800
16.4;14.4 NLS in SQL;802
16.5;14.5 NLS-Data-Dictionary-Views;804
16.6;14.6 Zusammenfassung;804
17;Die Autoren;806
18;Index;810
1 Schnelleinstieg Folgende Punkte werden in diesem Kapitel behandelt: Grundsätzliches zu einer Oracle-Datenbank Vorbereitung eines Linux- und Windows-Systems für die Installation Die Installation Grundlagen der Oracle-Administration Online-Hilfe (My Oracle Support) Die Oracle-Dokumentation In diesem Kapitel soll ein grundlegender Einstieg in das Thema Oracle-Datenbanken gegeben werden. Hierbei zählen unter anderem die Vorbereitung des Betriebssystems und die Installation der Oracle-Software und das Aufsetzen der Datenbank. Des Weiteren soll die grundlegende Konfiguration für den Zugriff auf die Datenbank behandelt werden. 1.1 Grundsätzliches zu einer Oracle-Datenbank Die Oracle-Architektur gliedert sich grob in zwei grundlegende Bereiche: die Oracle-Datenbank die Oracle-Instanz Des Weiteren bestehen Instanz und Datenbank aus weiteren Komponenten, die hier im Vorfeld grob angerissen werden sollen, um bei der Installation besser verstehen zu können, welche Einstellungen in den entsprechenden Dialogen der Installation zu tätigen sind. Im späteren Verlauf dieses Buches wird darauf intensiver eingegangen. 1.1.1 Die Oracle-Instanz Die Oracle-Instanz ist der Motor der Oracle-Architektur und befindet sich im Hauptspeicher des Systems. Die Oracle-Instanz wird auch als der aktive Teil der Oracle-Architektur bezeichnet. Zu ihr gehören Speicherstrukturen für die Ablage von Daten sowie Hintergrundprozesse. Der Aufbau der Instanz wird über die Parameter- oder (ab Oracle 9i) über die Serverparameterdatei definiert. Wird eine Instanz gestartet, so wird im Vorfeld der Inhalt der Parameterdatei oder der Serverparameterdatei ausgelesen, die die Konfigurationseinstellungen der Instanz beinhaltet. So werden beispielsweise die Größen der Speicherstrukturen, aber auch bestimmte Optionsparameter der Datenbank und Instanz über sie konfiguriert. 1.1.2 Die System Global Area Die System Global Area (SGA) beinhaltet die Speicherstrukturen der Oracle-Instanz, welche unter anderem Tabellendaten, Metadaten oder Systeminformationen der Datenbank speichern. Zu den Speicherstrukturen gehören zum Beispiel der Database Buffer Cache, der Redo Log Buffer, der Shared Pool, der Large Pool, der Java Pool und weitere hier nicht näher erläuterte Speicherbereiche. 1.1.3 Initialisierungsparameter Initialisierungsparameter bestimmen den Aufbau und die Konfiguration der Datenbankinstanz. Dazu gehören beispielsweise Parameter, die bestimmen, wie die Datenbankinstanz agieren soll, oder sie bestimmen die Größenkonfiguration der Speicherbereiche der SGA. Diese Parameter werden bei Start der Instanz aus der Parameterdatei oder der Serverparameterdatei ausgelesen. Allerdings sind nicht alle Parameter, die Oracle zur Verfügung stellt, in der Serverparameterdatei gesetzt, sondern nur die, die von der Standardkonfiguration abweichen. 1.1.4 Die Oracle-Datenbank Die Oracle-Datenbank besteht aus den Datenbankdateien, den Redo Log-Dateien und der Kontrolldatei und befindet sich auf dem Plattensubsystem des Datenbankservers. Die Oracle-Datenbank wird auch als der passive Teil bezeichnet. Allgemein wird gesagt, dass eine Datenbank gestartet wird. Dies ist aber nicht richtig, weil nur der Motor, also die Instanz, gestartet werden kann, welche dann mit der Datenbank interagiert. 1.1.5 Die Kontrolldatei Die Kontrolldatei ist ein wichtiger Bestandteil der Oracle-Datenbank. In ihr befinden sich unter anderem die Speicherorte der Datenbankdateien. Nach dem Start der Instanz wird die Kontrolldatei über den in der Parameterdatei befindlichen Initialisierungsparameter lokalisiert und die Speicherorte der Datenbankdateien werden ausgelesen. Darauffolgend werden die Datenbankdateien an die Instanz angebunden (gemountet). Ist die Kontrolldatei defekt oder nicht vorhanden, schlägt ein Öffnen der Datenbank fehl, weil die entsprechenden Datendateien nicht gefunden werden können. Zusätzlich wird die Kontrolldatei vom Recovery Manager als Sicherungskatalog verwendet, indem alle Metadaten der mit dem Recovery Manager erzeugten Sicherungen in ihr gespeichert werden. Ist die Kontrolldatei unwiederbringlich verloren, kann die Datenbank nur schwer wiederhergestellt werden. Aus diesem Grund ist eine Spiegelung der Kontrolldateien zu empfehlen, um einem Verlust vorzubeugen. 1.1.6 Die Redo Log-Dateien Änderungen in der Datenbank werden aus Gründen der Performance nicht direkt in die Datenbank zurückgeschrieben, sondern vorerst in den sogenannten Redo Log-Dateien gesammelt. Dieses geht weitaus schneller, da diese Logdateien sequentiell nur mit den Änderungsvektoren beschrieben werden. Eine Datenbank muss immer mindestens zwei dieser Dateien besitzen, hat in der Regel aus Performancegründen aber mehr. Diese Dateien werden zyklisch beschrieben. Das bedeutet: Ist die erste Datei vollgeschrieben, wird in die zweite Datei geschaltet und der Schreibprozess dort fortgesetzt; ist auch diese Datei gefüllt, wird wieder zurück in die erste Datei geschaltet und der Schreibprozess erfolgt erneut. Die Redo Log-Dateien beinhalten also die Informationen der Datensatzänderungen und dienen bei einem Instanzabsturz zur Wiederherstellung der Änderungen in der Datenbank. 1.1.7 Instanz-Recovery Sollte eine Instanz terminieren, so müssen die Datenänderungen, die noch nicht in die Datenbank übertragen wurden, nach einem Neustart der Instanz über die Redo Log-Dateien wiederhergestellt werden. Dieser Vorgang wird als Instanz-Recovery bezeichnet. 1.1.8 Betriebsarten einer Datenbank OLTP-Datenbanken (On-Line Transaction Processing) zeichnen sich durch eine hohe Transaktionsrate aus, deren Datenänderungen innerhalb der Transaktionen klein sind. Zusätzlich laufen viele Abfragen in die Datenbank ein, deren Ergebnismengen ebenfalls klein sind. OLTP-Systeme sind zum Beispiel ERP-Systeme (Enterprise Resource Planning, Personalplanung, Kapital, Betriebsmittel, Verkauf, Marketing, Finanz- und Rechnungswesen) oder CRM-Systeme (Customer Relation Management, Systeme für Kundenbetreuung). OLAP-Datenbanken (On-Line Analytical Processing) werden in bestimmten Abständen mit Daten befüllt und dienen zur Analyse dieser Datenbestände. 1.1.9 Optimal Flexible Architecture (OFA) OFA ist eine Empfehlung für das Layout von Dateisystemen und Verzeichnisstrukturen. Sie ist die Grundlage für eine Standardisierung und eine vereinfachte Administration. Die Richtlinien wurden im Jahre 1990 mit einem Whitepaper von Cary Millsap herausgegeben und im Jahre 1995 überarbeitet. Dieses Dokument ist unter dem Titel „The OFA-Standard ? Oracle for Open Systems“ erschienen und wird als offizieller OFA-Standard angesehen. Für den Schnelleinstieg empfehlen wir, den Standard-Vorgaben des „Universal Installer“ sowie des „Database Configuration Assistant“ zu folgen. Damit liegen Sie sehr nahe am OFA-Standard. 1.2 Vorbereitung eines Linux- und Windows-Systems für die Oracle-Installation Die Vorbereitung einer Oracle-Installation unter einem Windows- oder Linux-System ist unterschiedlich. Während für die Oracle-Installation unter Linux im Vorfeld einige manuelle Eingriffe durchgeführt werden müssen, sind unter Windows nur grundlegende Anpassungen notwendig. Die Installation der Oracle-Software und der Datenbank unterscheiden sich auf beiden Betriebssystemen nach dem Start des Oracle Universal Installers nur geringfügig. Tabelle 1.1 Vergleich der Unterschiede bei der Installation zwischen Unix/Linux und Windows UNIX/Linux Windows Instanz Beim Hochfahren der Instanz werden Prozesse des Betriebssystems gestartet. Während der Installation wird ein Windows-Dienst erstellt. Die Instanz kann gestartet werden, wenn der Dienst läuft. OS-Gruppen Die Gruppen für OSDBA, OSOPER, OSBACKUPDBA, OSSYSDG und OSSYSKM werden bei der Vorbereitung des Betriebssystems angelegt. Die Gruppen OSDBA, OSOPER, OSBACKUPDBA, OSSYSDG und OSSYSKM werden durch den Universal Installer angelegt. OS-Benutzer Es wird ein spezieller Benutzer angelegt, der sich in der Inventar-Gruppe befindet. Es wird ein Benutzer benötigt, der über lokale Administrator-Rechte verfügt. Umgebung Umgebungsvariablen werden in der Shell gesetzt. Umgebungsvariablen werden durch den Universal Installer in das Registry geschrieben. 1.2.1 Die Oracle-Editionen Oracle Database ist in fünf unterschiedlichen Editionen verfügbar. In Abhängigkeit von Last, Datenvolumen oder Verwendbarkeit kann je nach Größe des Geldbeutels unter ihnen gewählt werden. Hierzu gehören die folgenden Editionen: Oracle Database Express Edition Oracle Database Standard Edition One Oracle Database Standard Edition Oracle Database Enterprise...