69,99 €
• Der unentbehrliche Ratgeber für die täglichen DBA-Aufgaben
• Nutzen Sie die Erfahrung der langjährigen Oracle-Spezialisten
• Mit einer Fülle praxiserprobter Lösungen
• Deckt die Oracle-Versionen bis 12c ab
• Im Internet: Die Skripte des Buches sowie Listen mit nützlichen Kommandos zum Nachschlagen
Als Administrator der Oracle Database finden Sie in diesem Handbuch die ideale Unterstützung für die Herausforderungen Ihres Arbeitsalltags. Hier haben sich namhafte und praxiserfahrene Autoren zusammengetan, die gemeinsam über 150 Jahre Erfahrung mit dieser Datenbank aufweisen und in den jeweiligen Kapiteln ihre Spezialgebiete darstellen.
Die Autoren vermitteln Ihnen fundiertes Know-how sowie praktische Lösungen zu Themen wie Aufbau und Betrieb eines Datenbankservers, Administration und Monitoring, Multitenant, High Availability, Backup und Recovery, Security, Upgrade einer Datenbank und Optimierung.
Zusätzlich finden Sie in diesem Handbuch neben der Darstellung der Produkte und Features von Oracle Database 12c, viele Beispiele, Praxistipps und Tricks, die Sie direkt in Ihre tägliche Arbeit integrieren können und die über Versionsgrenzen hinweg anwendbar sind.
Im Internet können Sie nicht nur auf die nützlichen Skripte des Buches zugreifen, sondern Sie erhalten auch weitere wichtige Informationen, ideal aufbereitet zum Nachschlagen: sqlplus-Kommandos, Datentypen, v$ views, Dictionary-Tabellen, DB-Parameter und einiges mehr.
AUS DEM INHALT
• Schnelleinstieg
• Architektur und Administration
• Verwaltung von Datenbankobjekten
• Speicherplatzverwaltung
• Multitenant
• Security
• Automatic Storage Management
• Optimierung
• Monitoring
• Aufbau und Betrieb eines Datenbankservers
• Backup und Recovery
• Verfügbarkeit
• Datenbank-Upgrades
• Globalization Support
Das E-Book können Sie in Legimi-Apps oder einer beliebigen App lesen, die das folgende Format unterstützen:
Seitenzahl: 1019
Mirko Hotzy Andrea Held Marek Adar Chris Antognini Ronny Egner Markus Flechtner Angelika Gallwitz Stefan Oehrli Daniel Steiger
Der Oracle DBA
Alle in diesem Buch enthaltenen Informationen, Verfahren und Darstellungen wurden nach bestem Wissen zusammengestellt und mit Sorgfalt getestet. Dennoch sind Fehler nicht ganz auszuschließen. Aus diesem Grund sind die im vorliegenden Buch enthaltenen Informationen mit keiner Verpflichtung oder Garantie irgendeiner Art verbunden. Autoren und Verlag übernehmen infolgedessen keine juristische Verantwortung und werden keine daraus folgende oder sonstige Haftung übernehmen, die auf irgendeine Art aus der Benutzung dieser Informationen – oder Teilen davon – entsteht.
Ebenso übernehmen Autoren und Verlag keine Gewähr dafür, dass beschriebene Verfahren usw. frei von Schutzrechten Dritter sind. Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in diesem Buch berechtigt deshalb auch ohne besondere Kennzeichnung nicht zu der Annahme, dass solche Namen im Sinne der Warenzeichen und MarkenschutzGesetzgebung als frei zu betrachten wären und daher von jedermann benutzt werden dürften.
Bibliografische Information der Deutschen Nationalbibliothek: Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über http://dnb.d-nb.de abrufbar.
Dieses Werk ist urheberrechtlich geschützt. Alle Rechte, auch die der Übersetzung, des Nachdruckes und der Vervielfältigung des Buches, oder Teilen daraus, vorbehalten. Kein Teil des Werkes darf ohne schriftliche Genehmigung des Verlages in irgendeiner Form (Fotokopie, Mikrofilm oder ein anderes Verfahren) – auch nicht für Zwecke der Unterrichtsgestaltung – reproduziert oder unter Verwendung elektronischer Systeme verarbeitet, vervielfältigt oder verbreitet werden.
© 2016 Carl Hanser Verlag Münchenwww.hanser-fachbuch.de
Lektorat: Sylvia Hasselbach Copyediting: Petra Kienle, Fürstenfeldbruck Herstellung: Irene Weilhart Umschlagdesign: Marc Müller-Bremer, www.rebranding.de, München Umschlagrealisation: Stephan Rönigk
Print-ISBN: 978-3-446-44344-0 e-Pub-ISBN: 978-3-446-45142-1
Verwendete Schriften: SourceSansPro und SourceCodePro (Lizenz) CSS-Version: 1.0
Titelei
Impressum
Inhalt
Vorwort
1 Schnelleinstieg
1.1 Grundsätzliches zu einer Oracle-Datenbank
1.1.1 Die Oracle-Instanz
1.1.2 Die System Global Area
1.1.3 Initialisierungsparameter
1.1.4 Die Oracle-Datenbank
1.1.5 Die Kontrolldatei
1.1.6 Die Redo Log-Dateien
1.1.7 Instanz-Recovery
1.1.8 Betriebsarten einer Datenbank
1.1.9 Optimal Flexible Architecture (OFA)
1.2 Vorbereitung eines Linux- und Windows-Systems für die Oracle-Installation
1.2.1 Die Oracle-Editionen
1.2.2 Hardware- und Softwarevoraussetzungen
1.2.3 Vorbereitung eines Windows-Systems für die Installation
1.2.4 Vorbereitung eines Linux-Systems für die Datenbankinstallation
1.3 Die Installation
1.3.1 Software und Datenbankinstallation mit OUI
1.3.2 Datenbankinstallation mit DBCA
1.4 Grundlagen der Oracle-Administration
1.4.1 Administrationswerkzeuge
1.4.2 Das Grundwerkzeug SQLPlus
1.4.3 Die Standardadministratoren
1.4.4 Starten der Datenbankinstanz
1.4.5 Beenden der Datenbankinstanz
1.4.6 Initialisierungsparameter
1.4.7 Das Listener Control
1.4.8 Oracle Enterprisemanager Express
1.4.9 Der SQLDeveloper
1.5 Online-Hilfe (My Oracle Support)
1.6 Die Oracle-Dokumentation
2 Architektur und Administration
2.1 Datenbank und Instanz
2.2 Physische Architektur einer Oracle-Datenbank
2.2.1 Datenblöcke
2.2.2 Datafiles
2.2.3 Tablespaces
2.2.4 Informationen zu Tablespaces im Data Dictionary
2.2.5 Empfehlungen zum Tablespace-Layout
2.2.6 Redo Logs
2.2.7 Controlfiles
2.2.8 Parameterfile
2.2.9 Passwordfile
2.2.10 Alert- und Trace-Dateien
2.2.11 Flashback Logs
2.2.12 Block-Change-Tracking-Protokoll
2.3 Instanz: Arbeitsspeicher- und Prozessarchitektur
2.3.1 System Global Area (SGA)
2.3.2 Program Global Area (PGA)
2.3.3 Memory Management
2.3.4 Prozesse
2.3.5 Prozesse auf Linux/Unix
2.3.6 Prozesse auf Windows-Systemen
2.3.7 Prozessarchitektur mit Oracle 12c: Multithreads
2.4 Konsistenz der Datenbank
2.4.1 Transaktionsmanagement
2.4.2 Lesekonsistenz
2.4.3 Undo Management
2.4.4 Sperren
2.4.5 Isolation Level
2.4.6 System Change Number (SCN)
2.4.7 Checkpoints
2.4.8 Crash Recovery
2.5 Start und Stopp einer Oracle-Datenbank
2.5.1 Phasen während des Startup
2.5.2 Phasen während des Shutdowns
2.5.3 Startup-Befehle
2.5.4 Shutdown-Befehle
2.6 Verwaltung von Tablespaces
2.6.1 Informationen zu bestehenden Tablespaces ermitteln
2.6.2 Tablespaces erstellen
2.6.3 Tablespace umbenennen
2.6.4 Tablespaces vergrößern und verkleinern
2.6.5 Datafiles zu Tablespaces hinzufügen
2.6.6 Datafiles verschieben oder umbenennen
2.6.7 Tablespaces löschen
2.6.8 Datafiles löschen
2.6.9 Default- und Temporary-Tablespace für Benutzer setzen
2.6.10 Offline- und Online-Setzen eines Tablespaces
2.6.11 Read-Only- und Read-Write-Setzen
2.6.12 Aktivieren und Deaktivieren des Logging für Tablespaces
2.6.13 Verwaltung von Undo Tablespaces
2.6.14 Verwaltung von Temporary Tablespaces
2.7 Verwaltung von Redo Logs
2.7.1 Informationen zu Redo Logs aus dem Data Dictionary ermitteln
2.7.2 Redo Log-Historie
2.7.3 Empfehlungen zur Konfiguration von Redo Logs
2.7.4 Anlegen einer Redo Log-Gruppe
2.7.5 Hinzufügen eines weiteren Mitglieds zu einer bestehenden Gruppe
2.7.6 Löschen eines Mitglieds einer Redo Log-Gruppe
2.7.7 Löschen einer Redo Log-Gruppe
2.7.8 Wechseln der Redo Log-Gruppe
2.7.9 Verschieben und Umbenennen von Redo Logs
2.7.10 Logfiles bereinigen
2.7.11 Redo Logs für Real Application Clusters (RAC)
2.7.12 Der Archive Log-Modus
2.8 Verwaltung der Controlfiles
2.8.1 Informationen zu Controlfiles ermitteln
2.8.2 Controlfiles spiegeln
2.8.3 Controlfiles durch eine Kopie sichern
2.8.4 Controlfiles mit einem Trace dumpen
2.9 Parametrisierung
2.9.1 Der Startvorgang mit Parameterfile
2.9.2 Welche Parameterdatei wird aktuell verwendet?
2.9.3 Ändern der Parametrisierung
2.9.4 Zurücksetzen eines Parameters
2.9.5 Probleme bei der Änderung der Parametrisierung
2.9.6 Aktuelle Parametrisierung ermitteln
2.9.7 Parameter zur Datenbank- und Instanz-Konfiguration
2.9.8 Verdeckte Parameter
2.9.9 PFiles und SPFiles erzeugen
2.10 Passwort-Dateien verwalten
2.10.1 Passwort-Datei erstellen
2.10.2 Passwort-Dateien und Datenbankparameter
2.10.3 Privilegierte Benutzer einer Passwort-Datei hinzufügen und entfernen
2.11 Weitere Administrationsbefehle
Ändern des Globalen Namens der Datenbank
2.11.2 Ändern des Zeichensatzes
2.11.3 Benutzerverbindungen beenden: Kill Session
2.11.4 Benutzerverbindungen beenden: Disconnect Session
2.11.5 Benutzersessions sperren: Restricted Mode
2.11.6 Benutzeraktionen unterbinden: Quiesce Restricted
2.11.7 Einen Checkpoint erzwingen
2.11.8 Den Blockpuffer leeren: Flush buffer_cache
2.11.9 Den Shared Pool leeren: Flush shared_pool
2.11.10 Den Inhalt eines Datenblockes dumpen
2.12 Informationen zur Datenbank ermitteln
2.12.1 Statische Data Dictionary Views
2.12.2 Dynamische Performance Views
2.12.3 Allgemeine Informationen zur Datenbank
2.12.4 Startzeit und Status der Instanz
2.12.5 Hostname und Instanz-Name
2.12.6 Spracheinstellungen und Zeichensätze
2.12.7 Aktuelle Datenbankversion
2.12.8 Installierte Oracle-Optionen
2.12.9 Größen der Caches der SGA
2.12.10 Pfad zu Trace-Dateien und Alert-Log
2.12.11 Datenbank-Benutzer
2.12.12 Rechte und Rollen eines Datenbank-Benutzers
2.12.13 Datenbankobjekte
2.12.14 Offene Datenbankverbindungen
2.12.15 Aktive Sessions
2.12.16 SQL-Statement nach Session
2.12.17 Waits
2.12.18 Langlaufende Operationen
2.12.19 Sperren in der Datenbank
2.12.20 Die aktuelle System Change Number (SCN) ermitteln
2.13 Resümee
3 Verwaltung von Datenbankobjekten
3.1 Benutzer und Schemata
3.2 Bezeichner
3.3 Speicherhierarchie
3.4 Zeichensätze
3.5 Datentypen
3.6 Speicherorganisation von Tabellen
3.6.1 Heap Tables
3.6.2 Index Organized Tables (IOTs)
3.6.3 Object Tables
3.6.4 Global Temporary Tables
3.6.5 External Tables
3.6.6 Geclusterte Tabellen
3.6.7 Tabellenkomprimierung
3.6.8 Tabellenpartitionierung
3.7 Administrationsbefehle für Tabellen
3.7.1 Tabellen erstellen
3.7.2 Erstellen einer Tabelle aus einem Select-Statement
3.7.3 Tabellen kopieren
3.7.4 Tabellennamen ändern
3.7.5 Tabelleneigenschaften ändern
3.7.6 Löschen einer Tabelle
3.7.7 Tablespace zuordnen
3.7.8 Eine Tabelle in einen anderen Tablespace verschieben
3.7.9 Extent-Größen festlegen
3.7.10 Einstellen der Größe des Transaktionsheaders
3.7.11 Verzögerte Speicherallokation/Deferred Segment Creation
3.7.12 Cache/Nocache/Cache Reads
3.7.13 Logging und Nologging
3.7.14 Parallelisierung
3.7.15 Schreibschutz für Tabellen: Read only/Read write
3.7.16 Spalten hinzufügen
3.7.17 Spaltennamen ändern
3.7.18 Default-Werte für Spalten vergeben
3.7.19 Spaltendefinitionen ändern
3.7.20 Spalten physisch löschen
3.7.21 Spalten logisch löschen
3.7.22 Speicherplatz einer Tabelle ermitteln
3.7.23 Speicherplatz freigeben
3.7.24 Tabellen leeren mit Truncate Table
3.7.25 Wichtige Rechte rund um Tabellen25
3.7.26 Informationen zu Tabellen und Spalten im Data Dictionary
3.8 Constraints
3.8.1 Not Null
3.8.2 Unique
3.8.3 Primary Key
3.8.4 Foreign Key
3.8.5 Check-Contraints
3.8.6 Aktivierung und Deaktivierung von Constraints
3.8.7 Verzögerte Überprüfung
3.8.8 Umbenennen von Constraints
3.8.9 Entfernen von Constraints
3.8.10 Wichtige Rechte rund um Constraints
3.8.11 Informationen zu Constraints im Data Dictionary
3.9 Views
3.9.1 Standard-Views
3.9.2 Materialized Views
3.9.3 Objekt-Views
3.9.4 Wichtige Rechte rund um Views
3.9.5 Informationen zu Views im Data Dictionary
3.10 Indizes
3.10.1 B*Baum
3.10.2 Bitmap Index
3.10.3 Reverse Key Index
3.10.4 Funktionsbasierter Index
3.10.5 Unique Index
3.10.6 Online-Erstellung eines Index
3.10.7 Speicherparameter: Tablespace und Extentgrößen
3.10.8 Einstellen der Größe des Transaktionsheaders
3.10.9 Reorganisation/Index Rebuild
3.10.10 Speicherplatz eines Index ermitteln
3.10.11 Speicherplatz freigeben
3.10.12 Deaktivieren eines Index
3.10.13 Invisible Index
3.10.14 Logging
3.10.15 Parallelisierung
3.10.16 Umbenennen eines Index
3.10.17 Monitoring der Index-Nutzung
3.10.18 Wichtige Rechte rund um Indizes
3.10.19 Informationen zu Indizes im Data Dictionary
3.11 Synonyme
3.11.1 Public Synonym
3.11.2 Wichtige Rechte rund um Synonyme
3.11.3 Informationen zu Synonymen im Data Dictionary
3.12 Datenbank-Links
3.12.1 Public Database-Link
3.12.2 Verbindungsdescriptor zur Remote-Datenbank
3.12.3 Rechte zu Datenbank-Links
3.12.4 Informationen zu Datenbank-Links im Data Dictionary
3.13 Sequenzen
3.13.1 Rechte zu Sequenzen
3.13.2 Informationen zu Sequenzen im Data Dictionary
3.14 PL/SQL-Programme
3.14.1 Stored Procedures/Functions
3.14.2 Packages
3.14.3 Trigger
3.14.4 Wichtige Rechte rund um PL/SQL-Programme
3.14.5 Informationen zu PL/SQL-Programmen im Data Dictionary
3.15 Resümee
4 Speicherplatzverwaltung
4.1 Datenbankspeicheroptionen
4.1.1 Eigenschaften eines Speichersystems
4.1.2 Filesysteme
4.1.3 Automatic Storage Management
4.1.4 Die Auswahl der Datenbankspeicheroption
4.2 Data-, Temp- und Redo Log-File-Attribute
4.2.1 Initial Size
4.2.2 Automatische Filevergrößerung
4.2.3 Manuelle Filevergrößerung
4.3 Extent-Management-Optionen
4.3.1 Extent Map
4.3.2 Storage-Parameter
4.3.3 Extent-Allozierung
4.3.4 Dictionary Managed Tablespaces
4.3.5 Locally Managed Tablespaces
4.3.6 Auswahl der Extent-Management-Optionen
4.4 Segmentspace-Verwaltung
4.4.1 High-Water Mark
4.4.2 Manuelle Segmentspace-Verwaltung
4.4.3 Automatische Segmentspace-Verwaltung
4.4.4 Auswahl einer Segmentspace-Verwaltungsoption
4.5 Zusätzliche Segmentoptionen
4.5.1 Interested Transaction List (ITL)
4.5.2 Minimal Logging
4.6 Reorganisationen
4.6.1 Datensatzmigration und Datensatzverkettung
4.6.2 Verschieben von Segmenten
4.6.3 Verschieben von Tabelleninhalten
4.6.4 Rückgewinnung von freiem Platz
4.7 Resümee
5 Oracle Multitenant
5.1 Die Container-Datenbank-Architektur
5.1.1 Unterschiede zur klassischen Architektur
5.1.2 Die Architektur
5.1.3 Verzeichnisstrukturen und Dateinamen
5.1.4 Verfügbare Datenbankvarianten in Oracle 12c
5.2 Anlegen einer Container-Datenbank
5.2.1 CDB anlegen mit dem DBCA
5.2.2 CDB anlegen mit SQL-Skript
5.3 Aufteilung der Zuständigkeiten
5.4 Anlegen einer Pluggable-Datenbank
5.5 Kopieren von Pluggable-Datenbanken
5.5.1 Kopieren einer lokalen PDB
5.5.2 Remote Cloning
5.5.3 Metadata Cloning
5.5.4 Subset Cloning
5.5.5 Snapshot Cloning
5.6 Zugriff auf Pluggable-Datenbanken
5.7 Administration von Pluggable-Datenbanken
5.7.1 Öffnen und Schließen von PDBs
5.7.2 Droppen von PDBs
5.7.3 Verschieben von PDBs
5.7.4 Benutzer- und Rechteverwaltung
5.7.5 PDB-übergreifende Operationen
5.7.6 Upgrades in der CDB-Architektur
5.7.7 Parameter
5.7.8 Änderungen im Data Dictionary
5.7.9 Werkzeuge
5.8 Backup & Restore von Container-Datenbanken
5.9 Migration zur CDB-Architektur
5.9.1 Clonen einer Nicht-CDB als PDB
5.9.2 Einhängen einer Nicht-CDB als PDB
5.10 Verschiedenes
5.10.1 CDB im RAC
5.10.2 CDB & DataGuard
5.10.3 Ressourcenmanagement
5.11 Einsatzmöglichkeiten
5.11.1 Database as a Service (DBaaS)
5.11.2 Entwicklungsdatenbanken
5.11.3 „Sammeldatenbanken“
5.12 Zusammenfassung
6 Security
6.1 Authentifizierung
6.1.1 Datenbankauthentifizierung
6.1.2 Betriebssystemauthentifizierung
6.1.3 Proxy-Authentifizierung
6.1.4 Kerberos
6.1.5 Authentifizierung per SSL und Zertifikaten
6.1.6 Enterprise User Security
6.2 Autorisierung
6.2.1 Systemprivilegien
6.2.2 Objektprivilegien
6.2.3 Administrative Privilegien
6.2.4 Berechtigungen auf Directories
6.2.5 Netzwerkzugriff
6.2.6 Rollen
6.2.7 Überwachung von Privilegien
6.2.8 Virtual Private Database
6.2.9 Database Vault
6.3 Auditing
6.3.1 Standard-Auditing
6.3.2 Unified Auditing
6.3.3 Audit Policies
6.3.4 Trigger-basiertes Audit
6.3.5 Fine-Grained Auditing
6.3.6 Verwalten der Audit-Informationen
6.3.7 Audit Vault und Database Firewall
6.4 Vertraulichkeit der Daten
6.4.1 Data Redaction
6.4.2 Verschlüsselung der Oracle-Dateien
6.4.3 Verschlüsselung und Integritätsprüfung des Netzwerkverkehrs
6.5 Resümee
7 Automatic Storage Management
7.1 Die ASM-Architektur im Überblick
7.2 Eine ASM-Umgebung konfigurieren
7.2.1 Die Software bereitstellen
7.2.2 Manuelle ASM-Konfiguration
7.2.3 ASM-Disks auf spezifischen Plattformen
7.2.4 Der Discovery-Prozess
7.2.5 Der ASMCA
7.2.6 ASM im Enterprise Manager 11g und Cloud Control 12c/13c
7.3 ASM-Disks, -Diskgruppen und -Fehlergruppen
7.4 Das Utility ASMCMD
7.5 ASM-Sicherheit
7.6 ASM Monitoring, Performance und Troubleshooting
7.7 Eine Datenbank nach ASM konvertieren
7.8 Das ASM Cluster File-System (ACFS)
7.8.1 General Purpose ACFS-Dateisystem
7.8.2 CRS Managed ACFS-Dateisystem
7.8.3 ACFS Snapshots
7.8.4 ACFS verwalten
7.9 Oracle Flex ASM
7.9.1 Architektur
7.9.2 Aktivierung von Flex ASM
7.9.3 Verwaltung von Flex ASM
7.10 Resümee
8 Optimierung
8.1 Designing for Performance
8.1.1 Unzulänglichkeiten im logischen Datenbankdesign
8.1.2 Implementation von generischen Tabellen
8.1.3 Verzicht auf Constraints
8.1.4 Unzulängliches physisches Datenbankdesign
8.1.5 Falsche Datentypauswahl
8.1.6 Inkorrekte Verwendung von Bind-Variablen
8.1.7 Fehlender Einsatz von Advanced Datenbankfeatures
8.1.8 Fehlende Verwendung von Stored-Procedures
8.1.9 Ausführung von unnötigen Commits
8.1.10 Häufiges Öffnen und Schließen von Datenbankverbindungen
8.1.11 Öffnen von zu vielen Datenbankverbindungen
8.2 Konfigurationsempfehlungen
8.2.1 Initialisierungsparameter
8.2.2 Systemstatistiken
8.2.3 Objektstatistiken
8.3 Vorgehen bei Performance-Problemen
8.3.1 Probleme einordnen
8.3.2 Probleme lösen
8.4 Identifikation von Performance-Problemen
8.4.1 Analyse von reproduzierbaren Problemen
8.4.2 Echtzeitanalyse von nichtreproduzierbaren Problemen
8.4.3 Nachträgliche Analyse von nichtreproduzierbaren Problemen
8.5 Ausführungspläne
8.5.1 Ermittlung des Ausführungsplans
8.5.2 Interpretation von Ausführungsplänen
8.5.3 Erkennen von ineffizienten Ausführungsplänen
8.6 Methoden zur Lösung von Performanceproblemen
8.6.1 Verhinderung unnötiger Arbeit
8.6.2 Datenbankaufrufe schneller machen
8.6.3 Ressourcenverwaltung
8.6.4 Hardware-Upgrade
8.7 Resümee
9 Monitoring
9.1 Monitoring-Architektur
9.1.1 Automatic Diagnostic Repository
9.1.2 ADRCI ‒ die Schnittstelle zum ADR
9.1.3 Health Monitor
9.1.4 Incident Package Service (IPS)
9.1.5 Enterprise Manager Support Workbench
9.1.6 Automatic Workload Repository (AWR)
9.2 Monitoring-Datenbasis
9.2.1 Alert-Log
9.2.2 Tracefiles, Dumps und Corefiles
9.2.3 Data Dictionary Views
9.2.4 Datenbankmetriken
9.2.5 Server Generated Alerts
9.2.6 Baseline Metric Thresholds und Adaptive Thresholds
9.2.7 Metric Extensions
9.2.8 Compliance Management
9.3 Monitoring von Oracle-Datenbanken
9.3.1 Überwachung der Serviceverfügbarkeit
9.3.2 ORA-Fehlermeldungen und Alerts
9.3.3 Monitoring der Systemaktivität
9.3.4 Platzüberwachung
9.3.5 Monitoring von SQL-Befehlen/Performance
9.3.6 Monitoring der CPU-Auslastung
9.3.7 Monitoring von RMAN-Backups
9.3.8 Überwachung von Konfigurationsänderungen
9.3.9 Überwachung von Locking-Situationen
9.3.10 Best-Practice (Basis-Monitoring)
9.4 Monitoring-Werkzeuge
9.4.1 Enterprise Manager Database Express 12c
9.4.2 Enterprise Manager Cloud Control
9.4.3 SQL Developer
9.4.4 Auswahlkriterien für Monitoring-Werkzeuge
9.5 Resümee
10 Aufbau und Betrieb eines Datenbankservers
10.1 Überlegungen zum Aufbau und Betrieb eines Datenbankservers
10.2 Wahl der Oracle-Plattform
10.3 Betriebssystembenutzer und Berechtigungen
10.3.1 Software-Owner und Betriebssystembenutzer
10.3.2 Home-Verzeichnis der User „oracle“ und „grid“
10.3.3 Betriebssystemgruppen
10.3.4 File-Permissions, Ownership und umask
10.4 Oracle-Verzeichnisstruktur
10.4.1 Optimal Flexible Architecture (OFA)
10.4.2 Der OFA-Verzeichnisbaum
10.4.3 Die „/u00“-Philosophie
10.4.4 Mountpoints
10.4.5 ORACLE_BASE
10.4.6 ORACLE_HOME
10.4.7 Shared-Home-Installationen
10.4.8 Multi-Home-Installationen
10.4.9 Oracle Universal Installer Inventory
10.4.10 Automatic Diagnostic Repository (ADR)
10.5 Verwaltung des Oracle-Environment
10.6 Betrieb eines Oracle-Datenbankservers
10.6.1 Monitoring & Reporting
10.6.2 Backup & Recovery
10.6.3 Datenbank-Maintenance
10.6.4 Weitere Betriebsaufgaben
10.6.5 Das Betriebshandbuch
10.7 Resümee
11 Backup und Recovery
11.1 Übersicht
11.1.1 Entwicklung eines Sicherungskonzepts
11.1.2 Offline- und Online-Sicherung
11.1.3 Logische und physische Sicherung
11.1.4 Restore und Recovery
11.1.5 Vollsicherung, inkrementelle und differenzielle Sicherung
11.1.6 Flash/Fast Recovery Area
11.1.7 Oracle-Backup- und Recovery-Lösungen und Werkzeuge
11.2 User-Managed Sicherungen
11.2.1 Backup-Informationen aus V$Views
11.2.2 Offline-Sicherung der ganzen Datenbank
11.2.3 Online-Sicherung der ganzen Datenbank
11.2.4 Backup der PDBs
11.2.5 Backup Tablespace und Datenfiles
11.2.6 Backup Controlfile
11.2.7 Backup der archivierten Redo Log-Dateien
11.2.8 Backup ASM und RAW Devices
11.2.9 Backup mit Snapshot Technology
11.2.10 Backup-Troubleshooting
11.2.11 Wiederherstellung aus einer Betriebssystemsicherung
11.3 Recovery-Manager-(RMAN-)Sicherungen
11.3.1 RMAN-Architektur und ihre Komponenten
11.3.2 Aufruf und RMAN-Konfiguration
11.3.3 Sicherungsoptimierung
11.3.4 Backup-Sets und Image-Kopien
11.3.5 Der Recovery-Katalog und die Recovery-Katalog-Datenbank
11.3.6 Sicherung auf Band in einem Run-Block
11.3.7 Sicherung der Datenbank im Online- und Offline-Modus
11.3.8 Inkrementelle Sicherung der Datenbank
11.3.9 Sicherung der ganzen Datenbank
11.3.10 Sicherung der CDBs
11.3.11 Sicherung der PDBs
11.3.12 Sicherung Tablespaces und Datenfiles
11.3.13 Sicherung von archivierten Redo Log-Dateien
11.3.14 Sicherung Controlfile und Spfile
11.3.15 Langzeitsicherungen
11.3.16 Sicherungsdateien sichern
11.3.17 Backup-Pieces und Tags
11.3.18 Reports zu Sicherungen
11.3.19 Monitoren des RMAN-Job-Fortschritts und Fehler
11.3.20 Prüfung auf Korruptionen
11.3.21 Löschen alter Sicherungen
11.3.22 Virtual Private Catalog
11.4 RMAN-Wiederherstellung
11.4.1 Wiederherstellen eines Blocks
11.4.2 Wiederherstellen einzelner Tabellen
11.4.3 Wiederherstellen einer Datendatei
11.4.4 Wiederherstellen eines Tablespace
11.4.5 Wiederherstellen der Kontrolldateien
11.4.6 Wiederherstellen eines Root-Containers
11.4.7 Wiederherstellen einer Datenbank (CDB)
11.4.8 Unvollständiges Wiederherstellen/Point in Time Recovery (PITR)
11.4.9 Restore Points und garantierte Restore Points
11.4.10 Data Recovery Advisory (DRA)
11.5 Oracle Flashback
11.5.1 Flashback Database und CDB
11.5.2 Flashback Table/Zurücksetzen einer Tabelle
11.5.3 Flashback Drop/Wiederherstellen einer gelöschten Tabelle
11.5.4 Flashback Transaction/Transaktionen zurücksetzen
11.6 Portabilität von Backups
11.7 Data Pump Export und Import
11.7.1 Übersicht
11.7.2 Befehle und Beispiele
11.7.3 Full Transportable Export/Import
11.7.4 Monitoring der Data-Pump-Jobs
11.8 Ausblick, Zusammenfassung
12 Verfügbarkeit
12.1 Übersicht Grid-Infrastruktur
12.2 Grid-Infrastruktur und Oracle Real Application Clusters (RAC)
12.2.1 Architektur
12.2.2 Oracle Cluster Registry (OCR)
12.2.3 Voting Devices
12.2.4 Prozesse
12.2.5 Logfiles
12.2.6 Grid Plug and Play (GPnP)
12.2.7 Grid Naming Service (GNS)
12.2.8 Single Client Access Name (SCAN)
12.2.9 Installation
12.2.10 Administration
12.2.11 Server Pools
12.2.12 Administrator-managed und Policy-managed Cluster
12.2.13 Oracle Flex Cluster
12.3 Oracle Restart
12.3.1 Architektur
12.3.2 Installation
12.3.3 Administration
12.4 Grid-Infrastruktur für Third-Party-Applikationen
12.4.1 Installation
12.4.2 Administration
12.5 RAC One Node
12.6 Oracle Data Guard
12.6.1 Architektur
12.6.2 Data Guard Services
12.6.3 Data Guard Protection Modes
12.6.4 Data Guard Broker
12.6.5 Verwaltungswerkzeuge
12.6.6 Hard- und Softwarevoraussetzungen
12.6.7 Verzeichnisstrukturen der Standby-Database
12.6.8 Vorbereitung der Primärdatenbank
12.6.9 Manuelle Erstellung der Physical-Standby-Datenbank
12.6.10 Erstellung der Physical-Standby-Datenbank mit RMAN DUPLICATE
12.6.11 Duplicate einer PDB- oder CDB-Datenbank
12.6.12 Überwachung der Physical-Standby-Datenbank
12.6.13 Real Time Apply und Standby-Logfiles
12.6.14 Starten und Stoppen des Redo Apply
12.6.15 Aktivierung des Data Guard Broker
12.6.16 Hinzufügen und Aktivieren von Standby-Datenbanken
12.6.17 Ändern von Konfigurationseinstellungen
12.6.18 Durchführen eines Switchover
12.6.19 Durchführen eines Failover
12.6.20 Far-Sync-Instanzen und Zero Data Loss
12.6.21 Aufbau einer Logical Standby-Datenbank
13 Datenbank-Upgrades
13.1 Upgrade vs. Migration
13.2 Generelle Rahmenbedingen
13.3 Technische Planung
13.4 Überblick Upgrade-Methoden
13.5 Generell mögliche Upgrade-Pfade
13.6 Database Upgrade Assistant (DBUA)
13.6.1 Software-Download
13.6.2 Datenbanksoftwareinstallation
13.6.3 Upgrade mithilfe des DBUA
13.6.4 Silent Upgrade
13.7 Manuelles Upgrade
13.7.1 Manuelles Upgrade im Detail
13.8 Downgrade
13.9 Best Practices Datenbank-Upgrade
13.10 Alternative Upgrade-Methoden
13.10.1 Original-Export- und -Import-Utilities (exp/imp)
13.10.2 Export und Import mittels Data Pump
13.10.3 Transportable Tablespaces
13.11 Full Transportable Database
13.12 Komplexe Upgrade-Methoden
13.12.1 Copy Table (Create Table as select)
13.12.2 Oracle Streams/Oracle Golden Gate
13.12.3 Upgrade mit logischer Standby-Datenbank
13.13 Datenbankkonvertierung auf 64 Bit
13.14 Wechsel von einer Standard Edition auf die Enterprise Edition
13.15 Wechsel von einer Enterprise Edition auf eine Standard Edition
13.16 Resümee
14 Globalization Support
14.1 Zeichensätze
14.1.1 Zeichensätze in der Datenbank
14.1.2 Unicode
14.1.3 Besonderheiten bei der Verwendung von Unicode als Datenbankzeichensatz
14.1.4 Welcher Zeichensatz ist als „Database Character Set“ am besten geeignet?
14.1.5 Häufig verwendete Zeichensätze
14.1.6 Zeichensatzwechsel der Datenbank
14.2 NLS-Einstellungen
14.2.1 NLS_LANG
14.2.2 NLS-Parameter
14.2.3 Abhängigkeiten
14.3 Zeit & Datum
14.4 NLS in SQL
14.5 NLS-Data-Dictionary-Views
14.6 Zusammenfassung
Die Autoren
Oracle Database 12c Release 1 ist seit Juli 2013 verfügbar und Oracle Database 12c Release 2 sitzt bereits in den Startlöchern. Von g zu c ‒ die aktuelle Datenbankversion bringt uns zweierlei: ein Release vollgepackt mit neuen Features und ein neues Zeitalter ‒ das Zeitalter der Konsolidierung als Basis für unterschiedlichste Cloud-Architekturen. Wie bei jedem neuen Major-Release stellt sich die Frage, was sich substanziell geändert hat und was wurde konsequent verbessert. Zeit also, sich das aktuelle Oracle-Datenbank-Release aus Praxis-Sicht im Detail anzuschauen.
Die Besonderheit an diesem Release: Durch die Einführung der Multitenant-Funktionalität mussten die Oracle-Entwickler Anpassungen quer durch den Datenbank-Kernel vornehmen, was wiederum dazu führte, dass nahezu alle Bereiche der Datenbank wie Architektur und Betriebsthemen, Administration, Security, Monitoring, Aufbau und Betrieb eines Datenbankservers, Backup und Recovery, Verfügbarkeit und Datenbankupgrades sowie die verfügbaren Oracle Utilites, Tools und Konzepte angepasst werden mussten.
Viele spannende Themen also, die es galt näher zu betrachten und durch unsere ausgesuchten Experten herstellerneutral darzustellen und zu bewerten. Als Beta-Tester der ersten Stunde waren wir wie immer von Anfang an am Ball und haben zahlreiche Praxiserfahrungen gesammelt. Auch diesmal sind wir davon überzeugt, dass für Sie, liebe Leserinnen und Leser, wieder eine Menge wertvoller Praxistipps und Tricks dabei sind.
Fast zwei Jahre sind auch diesmal bei der Erstellung dieses Buches vergangen. Auch in dieses Projekt wurden wieder Monate voller Arbeit, Diskussionen und Geduldsproben investiert. Ein solches Buch zu schreiben, das sowohl für die aktuelle Oracle-Datenbankversion als auch für ältere Oracle-Versionen gültig ist, inklusive zahlreicher Praxistipps und Tricks, ist jedesmal eine besondere Herausforderung. Am Ende des Projekts können wir sagen, der Aufwand hat sich wieder gelohnt.
Wir wünschen Ihnen viel Spaß bei der Lektüre und vor allem praktische Hilfe für Ihre tägliche Arbeit!
Marek Adar, Christian Antognini, Ronny Egner, Markus Flechtner, Angelika Gallwitz, Andrea Held, Mirko Hotzy, Daniel Steiger, Stefan Oehrli
Bei Fragen zu den hier behandelten Themen gibt es darüber hinaus die Möglichkeit, die Autoren über E-Mail oder einen ihrer Blogs zu kontaktieren:
[email protected] (für die Trivadis-Autoren)
Im Internet
Auf
http://downloads.hanser.de
haben wir einige Zusatzmaterialien zu diesem Buch für Sie zusammengestellt. Sie finden dort nicht nur die nützlichen Skripte aus dem Buch, sondern auch wichtige Informationen, ideal aufbereitet zum Nachschlagen: sqlplus-Kommandos, Datentypen, v$ views, Dictionary-Tabellen, DB-Parameter und einiges mehr.