Lehrveranstaltung Oracle Architektur – Inhalt

Werbung
Datenbanksystem
System Global Area
Hintergrundprozesse
Dr. Frank Haney
1
Komponenten des Datenbanksystems
System Global Area
Program Global Area
Hintergrundprozesse
Dr. Frank Haney
2
System Global Area – Elemente
SGA-Element
Funktion
DatabaseBuffer-Cache
Speicherbereich für Blöcke, die vom Server-Prozeß
aus den Datendateien gelesen und vom DBWn
asynchron auf Platte geschrieben werden (LRUMechanismus)
Speichert Before-Image- und After-Image-Kopien
von geänderten Daten, die in die Redo Log Dateien
geschrieben werden sollen, wird zyklisch
überschrieben
Speichert geparste Versionen von SQLAnweisungen, PL/SQL-Prozeduren und Data
Dictionary-Informationen.
Redo-LogBuffer
Shared Pool
Large Pool
Dr. Frank Haney
Optionaler Speicherbereich für I/O des RMAN,
Backup und Restore (kein LRU-Mechanismus)
3
Program Global Area
Dr. Frank Haney
4
Server – und Benutzerprozesse
ØBenutzerprozeß
wird generiert, wenn vom Benutzer ein Frontend wie z.B. SQL*Plus,
Forms, Reports oder der Enterprise Manager gestartet wird. Dieser Prozeß
kann auf dem Client oder Server ablaufen und bildet die Schnittstelle, über
die der Benutzer mit der Datenbank kommuniziert.
ØServerprozeß
bearbeitet die Anforderungen des Benutzer-Prozesses (z.B. Beantwortung
von SQL-Abfragen). In einer dedizierten Serverkonfiguration wird wir für
jeden Benutzerprozeß ein Serverprozeß auf dem Rechner mit der Instanz
erzeugt, sobald eine gültige Verbindung hergestellt ist.
Die Program Global Area (PGA) ist ein dem Serverprozeß zugeordneter
privater Speicherbereich. Sein Inhalt und sein Ort hängt von der
Serverkonfiguration ab. Bei dediziertem Server umfaßt dieser die
Sessioninformationen und den privaten SQL-Bereich (Bindevariablen,
Cursor).
Dr. Frank Haney
5
Wichtige Hintergrundprozesse
Typ
Beschreibung
Database Writer
(DBWn)
Schreibt asynchron "dirty" Buffer vom Datenbank-Buffer-Cache in
die Datendateien. Bis zu 10 Prozesse sind möglich.
Log Writer (LGWR)
Schreibt Daten (Protokoll der Änderungen von Daten- und RollbackBlöcken) aus dem Redo-Log-Buffer in die Redo-Log-Dateien.
Führt automatisch ein Instance Recovery durch. Stellt Speicherplatz
in temporären Segmenten wieder her, wenn sie nicht mehr benutzt
werden. Faßt zusammenhängende Bereiche von freiem Speicherplatz
zusammen.
Bereinigt den Server-Prozeß, der zu einem unnormal beendeten
Benutzer-Prozeß gehört. Führt Rollback durch und gibt die
Ressourcen frei, die der abgestürzte Prozeß hält.
System Monitor
(SMON)
Process Monitor
(PMON)
Checkpoint Process
(CKPT)
Synchronisiert die Header der Datendateien und Kontrolldateien mit
den aktuellen Log-Sequenz- und Checkpoint-Nummern.
Archiver (ARCn)
(optional)
Archiviert automatisch Redo-Log-Dateien. Bis zu 10 Prozesse
können gestartet werden.
Dr. Frank Haney
6
Physische Struktur der Datenbank
≥1
Dr. Frank Haney
≥1
≥2
7
Datenbankdateien
Dateityp
Beschreibung
Datendateien
Physikalische Datenspeicherung. Pro Datenbank wird mindestens
eine Datei benötigt. Diese Datei speichert den SystemTablespace. (binär)
Redo-Log-Dateien
Protokollieren Before Image und After Image von geänderten
Daten, um sie wiederherstellen zu können. Es werden mindestens
zwei Gruppen benötigt. (binär)
Kontrolldateien
Zeichnen die physikalische Struktur und den Status der
Datenbank auf. (binär)
Parameterdateien
Speichern Initialisierungsparameter, die beim Hochfahren der
Instanz ausgewertet werden. (Text - SPFILE aber binär)
Paßwortdatei
(optional)
Zur Authentifizierung privilegierter Benutzer, die die Datenbank
hochfahren, herunterfahren und wiederherstellen können.
Archivierte RedoLog-Dateien
(optional)
1:1 Kopien von Online Redo-Log-Dateien, Sie werden erstellt,
wenn die Datenbank in den Modus ARCHIVELOG gesetzt wird.
Werden beim Recovery benötigt. (binär)
Dr. Frank Haney
8
Inhalt der Kontrolldatei
ØDatenbankname und -identifier
ØDatum der Datenbank-Erzeugung
ØSpeicherorte für Datendateien und Redo Logs
ØNamen der Tablespaces
ØLog-History
ØBackup-Informationen
ØAktuelle Log Sequenz-Nummer
ØCheckpoint-Informationen (System Change Number)
Name und Pfade der Kontrolldateien werden dem Server in
der Parameterdatei bekannt gemacht.
Dr. Frank Haney
9
Logische Struktur
Dr. Frank Haney
10
Manuelles Hochfahren der Datenbank
Ablauf:
1. Instanz starten (Windows: Dienst muß laufen)
2. Datenbank mounten
3. Datenbank öffnen
Syntax:
STARTUP [FORCE] [RESTRICT] [PFILE=filename]
[OPEN|MOUNT|NOMOUNT]
ALTER DATABASE database MOUNT;
ALTER DATABASE database OPEN;
Dr. Frank Haney
11
Hochfahren der Datenbank – Phasen
NOMOUNT (Instanzstart):
• Parameterdatei spfileSID.ora oder initSID.ora lesen
• SGA allokieren
• Hintergrundprozesse starten
MOUNT:
• Datenbank der gestarteten Instanz zuordnen
• Kontrolldateien lokalisieren und öffnen
• Status der Daten- und Redo-Log-Dateien lesen
OPEN:
• Online Datendateien öffnen
• Online Redo-Log-Dateien öffnen
• SMON startet eventuelles Instance Recovery
Dr. Frank Haney
12
Informationen über Server und Datenbank
Ø Dynamische Performance-Views
• werden vom Oracle Server gepflegt und ständig aktualisiert
• enthalten Daten über Platten- und Speicherstrukturen
• enthalten wichtige Daten zum Performance Tuning
• haben Public Synonyme mit Präfix v$ (Übersicht V$FIXED_TABLE)
Ø Statische Data-Dictionary-Views
• enthalten die Informationen über die DB-Objekte
• haben Präfixe DBA_, ALL_, USER_ (Übersicht DICTIONARY)
Ø Wann stehen welche Informationen zur Verfügung?
• NOMOUNT: Daten aus dem Speicher werden gelesen
• MOUNT: Daten von Festplatte und Informationen aus der Kontrolldatei
werden gelesen
• OPEN: Data-Dictionary-Views und weitere Performance-Views
Dr. Frank Haney
13
Herunterfahren der Datenbank
Syntax:
SHUTDOWN [NORMAL|TRANSACTIONAL|IMMEDIATE|ABORT]
Optionen:
Modus
N
T
I
A
Neue Anmeldungen zulassen
Nein
Nein
Nein
Nein
Warten, bis aktuelle Sessions
beendet sind
Ja
Nein
Nein
Nein
Warten, bis aktuelle Transaktionen
beendet sind
Ja
Ja
Nein
Nein
Checkpoint erzwingen und Dateien Ja
schließen
Ja
Ja
Nein
Dr. Frank Haney
14
Herunterladen