Heim > php教程 > PHP开发 > Übersicht über das ORACLE-Datenbankmodell

Übersicht über das ORACLE-Datenbankmodell

黄舟
Freigeben: 2016-12-15 10:18:56
Original
2356 Leute haben es durchsucht

Eine ORACLE-Datenbank ist eine Sammlung von Daten, die zu einer Einheit verarbeitet werden. Jede ORACLE-Datenbank hat eine physische Struktur und eine logische Struktur.
Die physische Struktur der Datenbank wird durch die Betriebssystemdateien bestimmt, aus denen die Datenbank besteht. Datenbankdateien bieten echten physischen Speicher für Datenbankinformationen. Jede ORACLE-Datenbank besteht aus drei Arten von Dateien, nämlich Datendateien, Protokolldateien und Steuerdateien.
Die logische Datenbankstruktur ist die vom Benutzer verwendete Datenbankstruktur. Die logische Struktur einer ORACLE-Datenbank wird durch die folgenden Faktoren bestimmt:
(1) Ein oder mehrere Tabellenbereiche
(2) Datenbankschemaobjekt
Logische Speicherstrukturen wie Tabellenbereiche werden verwendet, um zu steuern, wie der physische Raum einer Datenbank verwendet wird, und die Beziehungen zwischen ihnen bilden das relationale Design einer Datenbank.
1. Physische Struktur der Datenbank
Die ORACLE-Datenbank besteht aus drei Arten von physischen Dateien, nämlich Datendateien, Protokolldateien und Steuerdateien.
1. Datendateien
Jede ORACLE-Datenbank verfügt über eine oder mehrere physische Datendateien (Datendateien). Eine Datenbankdatendatei enthält alle Datenbankdaten. Die Daten der logischen Datenbankstruktur werden auch physisch in den Datendateien der Datenbank gespeichert. Datendateien haben die folgenden Eigenschaften:
(1) Eine Datendatei ist nur einer Datenbank zugeordnet
(2) Sobald eine Datendatei erstellt wurde, kann die Größe nicht mehr geändert werden
(3) Ein Tabellenbereich besteht einer oder mehrerer Datendateien Die Daten, aus denen die
Datendatei besteht, können bei Bedarf gelesen und im internen Speicherbereich von ORACLE gespeichert werden. Beispiel: Der Benutzer möchte auf bestimmte Daten in einer Tabelle der Datenbank zugreifen. Befinden sich die angeforderten Informationen nicht im Speicherbereich der Datenbank, werden sie aus der entsprechenden Datendatei gelesen und im Speicher abgelegt. Beim Ändern und Einfügen neuer Daten ist es nicht erforderlich, sofort in die Datendatei zu schreiben. Um die Gesamtmenge der Festplattenausgabe zu reduzieren und die Leistung zu verbessern, werden die Daten im Speicher gespeichert und dann bestimmt der ORACLE-Hintergrundprozess DBWR, wie sie in die entsprechende Datendatei geschrieben werden.
2. Protokolldateien
Jede Datenbank verfügt über eine Protokolldateigruppe, die aus zwei oder mehr Protokolldateien (Redo-Protokolldateien) besteht, und jede Protokolldatei wird zum Sammeln von Datenbankprotokollen verwendet.
Die Hauptfunktion des Protokolls besteht darin, Änderungen an der Datenbank aufzuzeichnen, sodass alle Änderungen an der Datenbank im Protokoll aufgezeichnet werden. Die Protokolldatei dient hauptsächlich dazu, die Datenbank vor Ausfällen zu schützen. Um den Ausfall der Protokolldatei selbst zu verhindern, ermöglicht ORACLE gespiegelte Protokolle (gespiegeltes Redo-Protokoll), sodass mehrere identische Protokollkopien auf verschiedenen Datenträgern verwaltet werden können.
Die Informationen in der Protokolldatei werden nur bei der Wiederherstellung der Datenbank nach einem Systemausfall oder Medienfehler verwendet.
3. Steuerdatei
Jede ORACLE-Datenbank verfügt über mindestens eine Steuerdatei (Kontrolldatei), die die physische Struktur der Datenbank aufzeichnet. Die enthaltenen Hauptinformationen sind:
(1) Datenbankname
(2) Datenbankdaten Datei und Name und Speicherort der Protokolldatei
(3) Erstellungsdatum der Datenbank
Jedes Mal, wenn eine Instanz der ORACLE-Datenbank gestartet wird, wird ihre Steuerdatei verwendet, um die Datenbank- und Protokolldateien zu identifizieren, die geöffnet werden müssen beim Fortfahren mit Datenbankoperationen. Wenn sich die physische Zusammensetzung der Datenbank ändert, ändert ORACLE automatisch die Steuerdatei der Datenbank.
2.3.2 Logische Struktur der Datenbank
Die logische Struktur der Datenbank umfasst Tabellenbereich, Segment, Bereich und Block
1. Tabellenbereich
Eine Datenbank ist in eine oder mehrere logische Einheiten unterteilt, die als Tabellenbereiche bezeichnet werden. Ein Tablespace gruppiert zusammengehörige logische Strukturen. Datenbankadministratoren können Tabellenbereiche für Folgendes verwenden:
(1) Steuern der Festplattenzuordnung von Datenbankdaten
(2) Zuweisen bestimmter Speicherplatzanteile an Datenbankbenutzer
(3) Durch Online- oder Offline-Schalten eines einzelnen Tabellenbereichs , Kontrolle der Datenverfügbarkeit
(4) Durchführung teilweiser Datenbanksicherungs- oder Wiederherstellungsvorgänge
(5) Um die Leistung zu verbessern, weisen Sie Datenspeicher geräteübergreifend zu
Die Beziehung zwischen Datenbanken, Tabellenbereichen und Datendateien wird in gezeigt Abbildung 2.3-2 dargestellt.
Jede Datenbank kann logisch in einen oder mehrere Tabellenbereiche unterteilt werden. Jeder Tabellenbereich besteht aus einer oder mehreren Datendateien. Der Tabellenbereich speichert physisch alle logisch strukturierten Daten im Tabellenbereich. Der DBA kann einen neuen Tabellenbereich erstellen, Datendateien zum Tabellenbereich hinzufügen oder löschen und den Standardspeicherort für Segmente festlegen oder ändern.
Jede ORACLE-Datenbank enthält einen Tabellenbereich mit dem Namen SYSTEM, der beim Erstellen der Datenbank automatisch erstellt wird. Dieser Tabellenbereich enthält immer die Data Dictionary-Tabellen der gesamten Datenbank. Die kleinste Datenbank benötigt möglicherweise nur den SYSTEM-Tablespace. Dieser Tablespace muss immer online sein. Alle gespeicherten Daten für Tabellen und gespeicherte PL/SQL-Programmeinheiten (Prozeduren, Funktionen, Pakete und Trigger) werden im SYSTEM-Tablespace gespeichert.
Erweitern Sie den Tabellenbereich, indem Sie Datendateien im Tabellenbereich hinzufügen. Die Größe des Tabellenbereichs ist die Summe der Größen der Datendateien, aus denen der Tabellenbereich besteht.
Der DBA kann jeden anderen Tabellenbereich in der ORACLE-Datenbank außer dem SYSTEM-Tabellenbereich online oder offline schalten (der Offline-Tabellenbereich kann keine aktiven Rollback-Segmente haben). Ein Tablespace ist normalerweise online, sodass die darin enthaltenen Daten den Datenbankbenutzern zur Verfügung stehen. Wenn ein Tablespace offline ist, sind seine Daten nicht verfügbar. Unter den folgenden Umständen kann der DBA es offline schalten:
(1) Machen Sie einen Teil der Daten nicht verfügbar, während Sie den normalen Zugriff auf den verbleibenden Teil zulassen
(2) Führen Sie eine Offline-Tabellenbereichssicherung durch
(3 ) Um eine Anwendung so zu ändern oder zu warten, dass sie und ihre Tabellen vorübergehend nicht verfügbar sind.
Ein Tablespace, der ein aktives Rollback-Segment enthält, kann nicht offline geschaltet werden. Der Tablespace kann nur offline geschaltet werden .
Zeichnen Sie den Status des Tabellenbereichs im Datenwörterbuch auf, egal ob online oder offline. Wenn ein Tablespace beim Schließen der Datenbank offline ist, bleibt er offline, wenn die Datenbank das nächste Mal gemountet und erneut geöffnet wird.
Wenn bestimmte Fehler auftreten, kann ein Tabellenbereich automatisch von online auf offline wechseln. Durch die Verwendung mehrerer Tabellenbereiche werden verschiedene Datentypen getrennt, was DBAs die Verwaltung der Datenbank erleichtert.
Ein Tabellenbereich in der ORACLE-Datenbank besteht aus einer oder mehreren physischen Datendateien. Eine Datendatei kann nur einem Tabellenbereich zugeordnet werden.
ORACLE kann die Nutzung des Speicherplatzes durch logische Datenstrukturen wie Segmente, Bereiche und Datenblöcke detaillierter steuern.
2. Segment
Segment (SEGMENT) enthält einen bestimmten Typ einer logischen Speicherstruktur im Tabellenbereich und besteht aus einer Gruppe von Bereichen. In der ORACLE-Datenbank gibt es verschiedene Arten von Segmenten: Datensegmente, Indexsegmente, Rollback-Segmente und temporäre Segmente.
Datensegment: Für jede nicht aggregierte Tabelle gibt es ein Datensegment, und alle Daten in der Tabelle werden in diesem Segment gespeichert. Jede Aggregation verfügt über ein Datensegment, und die Daten für jede Tabelle in der Aggregation werden in diesem Segment gespeichert.
Indexsegment: Jeder Index verfügt über ein Indexsegment zum Speichern von Indexdaten.
Rollback-Segment: Es wird vom DBA eingerichtet und zum vorübergehenden Speichern von rückgängig zu machenden Informationen verwendet. Diese Informationen werden zum Generieren lesekonsistenter Datenbankinformationen verwendet, die während der Datenbankwiederherstellung verwendet werden, und zum Zurücksetzen nicht festgeschriebener Transaktionen.
Temporäres Segment: Wenn eine SQL-Anweisung einen temporären Arbeitsbereich erfordert, wird dieser von ORACLE erstellt. Bei Ausführung der Anweisung wird der temporäre Segmentbereich an das System zurückgegeben.
ORACLE weist allen Segmenten Platz in Flächeneinheiten zu.
3. Bereich
Ein Bereich (EXTENT) ist eine logische Einheit der Datenbankspeicherplatzzuweisung, die aus kontinuierlichen ORACLE-Datenblöcken besteht. Jedes Segment besteht aus einer oder mehreren Regionen. Wenn der gesamte Speicherplatz in einem Segment vollständig genutzt wurde, weist ORACLE dem Segment einen neuen Bereich zu.
Zu Wartungszwecken enthält jedes Segment in der Datenbank einen Segmenttitelblock, der die Eigenschaften des Segments und das Verzeichnis der Bereiche innerhalb des Segments beschreibt.
4. Datenblock
Datenblock ist die Einheit, die von ORACLE zum Verwalten des Speicherplatzes in Datendateien verwendet wird. Es handelt sich um die kleinste von der Datenbank verwendete E/A-Einheit. Ihre Größe kann von der Standard-E/A-Blockgröße abweichen Betriebssystem.

Das Obige ist die Übersicht über das ORACLE-Datenbankmodell. Weitere verwandte Artikel finden Sie auf der chinesischen PHP-Website (www.php.cn).


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage