Oracle Data Guard konfigurieren
Dieses Playbook enthält Skripte, mit denen Sie Ihre Oracle Data Guard-Umgebung konfigurieren können. Diese Skripte richten eine Standbydatenbank für eine vorhandene Primärdatenbank mit dem Feature restore from service
und Oracle Data Guard Broker ein.
Die dg-setup-scripts
verwenden eine DG_properties.ini
-Datei, um die primäre und die Standbyumgebungen zu definieren.
Die Skripte erstellen 2 TAR-Dateien, eine TAR-Datei der primären Kennwortdatei und eine TAR-Datei des primären Transparenten Datenverschlüsselungs-Wallets, die Sie in den Standby-Datenbankknoten kopieren.
Die Skripte nehmen keine Änderungen am Betriebssystem vor, wie net.core.rmem_max
und net.core.wmem_max
oder der maximalen Übertragungseinheit (MTU). Es wird empfohlen, net.core.rmem_max
und net.core.wmem_max
für einen optimalen Redo-Transport anzupassen.
In den folgenden Aufgaben wird beschrieben, wie Sie die Skripte ausführen, um Oracle Data Guard für Ihre Datenbank zu konfigurieren.
Umgebungsvariablen für Oracle Data Guard definieren
Verwenden Sie eine DG_properties.ini
-Datei, um das primäre System für eine Oracle Data Guard-Konfiguration vorzubereiten. Die Skripte verwenden die Parameter in DG_properties.ini
, um die Primär- und Standbysysteme zu konfigurieren. Die Datei enthält alle Eingabeparameter, die für die Skripte erforderlich sind. Weitere Informationen finden Sie unter Beispiele für DG_properties.ini
-Dateien im Abschnitt "Weitere Informationen".
Eine DG_properties.ini
-Beispieldatei ist in der ZIP-Datei dg-setup-scripts
verfügbar. Sie können die Datei mit den Umgebungswerten anpassen.
Hochladen der Skripts
Laden Sie die Skripte wie folgt auf die primären und sekundären Datenbankhosts hoch:
Oracle Data Guard-Parameter für die primäre Datenbank vorbereiten
Legen Sie die empfohlenen Oracle Data Guard-Parameter der Oracle Maximum Availability Architecture (MAA) in der primären Datenbank fest, bevor Sie Oracle Data Guard konfigurieren. Das Skript 1_prepare_primary_maa_parameters.sh
konfiguriert die empfohlenen MAA-Parameter für Oracle Data Guard und erstellt die Standbylogdateien.
Skriptname: |
|
Wo ausgeführt wird: |
In PRIMARY db host1 (unabhängig davon, ob es sich bei der primären Datenbank um eine Oracle Real Application Clusters (Oracle RAC)- oder Einzelinstanz handelt) |
Mit Benutzer ausführen: |
oracle |
MAA bietet Best Practices für Architektur, Konfiguration und Lebenszyklus für Oracle-Datenbanken und ermöglicht High Availability-Serviceebenen für Datenbanken, die sich in On-Premise-, Cloud- oder Hybridkonfigurationen befinden.
- DB_FLASHBACK_RETENTION_TARGET=1440 exportieren
- DB_BLOCK_CHECKSUM=FULL exportieren
- DB_BLOCK_CHECKING=FULL exportieren
- DB_LOST_WRITE_PROTECT=TYPICAL exportieren
- LOG_BUFFER=256M exportieren
- STANDBY_FILE_MANAGEMENT=AUTO exportieren
Hinweis:
Gemäß den Best Practices für MAA muss der ParameterDB_BLOCK_CHECKING
in der primären Datenbank auf MEDIUM
oder FULL
gesetzt werden. Das Skript setzt es auf FULL
. Wenn der Performanceoverhead für die Aktivierung von DB_BLOCK_CHECKING
auf MEDIUM
oder FULL
in Ihrer Primärdatenbank nicht akzeptabel ist, setzen Sie DB_BLOCK_CHECKING
nur für die Standbydatenbank auf MEDIUM
oder FULL
.
Führen Sie das Skript aus, um die Parameter festzulegen, bevor Sie Oracle Data Guard konfigurieren. Führen Sie dieses Skript nur einmal aus, unabhängig davon, ob es sich bei der primären Datenbank um eine Oracle Real Application Clusters (Oracle RAC)- oder Einzelinstanzdatenbank handelt.
Nachdem die MAA-Parameter festgelegt wurden, erstellt das Skript Standbylogs im Verzeichnis ONLINE_LOG_DEST1
. Die Standbylogs haben dieselbe Größe wie die Onlinelogs (REDOLOG_SIZE
). Sie haben eine weitere Gruppe als die Onlinelogs, aber dieselbe Anzahl von Threads.
Primäres System für Oracle Data Guard vorbereiten
Bereiten Sie die primären Hosts für eine Oracle Data Guard-Konfiguration vor, und erstellen Sie Ausgabedateien, die später in den Standby-Datenbankhosts benötigt werden.
Skriptname: |
|
Wo ausgeführt wird: |
In PRIMARY db hosts. Wenn Oracle Real Application Clusters (Oracle RAC): Führen Sie diesen zuerst auf dem primären DB-Host 1 und dann auf dem primären DB-Host 2 aus. |
Mit Benutzer ausführen: |
oracle |
2_dataguardit_primary.sh
erstellt die folgenden Ausgabedateien:
- TAR-Datei mit der Kennwortdatei
- TAR-Datei mit dem TDE-Wallet (nur wenn TDE-Verschlüsselung verwendet wird).
Ausgabedateien kopieren
Stellen Sie sicher, dass Sie die TAR-Dateien in den durch die Eigenschaften INPUT_PASWORD_TAR
und INPUT_WALLET_TAR
(bei Verwendung von TDE) angegebenen Verzeichnissen speichern, die in der Datei DG_properties.ini
definiert sind.
Sekundäres System für Oracle Data Guard vorbereiten
Bereiten Sie den neuen sekundären (Standby-)Host vor, erstellen Sie die Standbydatenbank, und konfigurieren Sie Oracle Data Guard Broker im sekundären Datenbankknoten.
Skriptname: |
|
Wo ausgeführt wird: |
In neuen STANDBY-DB-Hosts. Wenn Oracle Real Application Clusters (Oracle RAC): Führen Sie zuerst auf dem Standby-DB-Host 1 und dann auf dem Standby-DB-Host 2 aus. |
Mit Benutzer ausführen: |
root |
Das Skript 3_dataguardit_standby_root.sh
bereitet die neuen Standby-Datenbankhosts vor, indem die vorhandene Datenbank gelöscht und die erforderlichen Artefakte (TNS-Aliasnamen, NET-Verschlüsselung, Kennwortdatei und Transparent Data Encryption-(TDE-)Wallet) konfiguriert werden. Anschließend erstellt und konfiguriert er die Standbydatenbank mit dem Feature Oracle Recovery Manager (RMAN) restore from service
und konfiguriert den Oracle Data Guard-Broker.
Das Skript 3_dataguardit_standby_root.sh
verwendet die Umgebungsvariablen, die Sie in der Datei DG_properties.ini
definiert haben. Wenn es sich bei der sekundären Datenbank um eine Oracle RAC-Datenbank handelt, führen Sie das Skript auf beiden Knoten aus. Die meisten Aktionen werden ausgeführt, wenn das Skript in Node1 ausgeführt wird und eine Teilmenge der Schritte ausgeführt wird, wenn es in Node2 ausgeführt wird. Führen Sie das Skript nicht in Node2 aus, bevor das Skript in Node1 abgeschlossen wird.
TNS-Eintrag für eine neue Standby-Datenbank hinzufügen
ADDITIONAL_STANDBY=YES
) eine neue Standbydatenbank hinzugefügt haben, fügen Sie den TNS-Eintrag hinzu, der auf die zuvor vorhandene Standbydatenbank verweist, in der neuen tnsnames.ora
-Standbydatenbank und umgekehrt. Stellen Sie sicher, dass sich die Standby-Datenbanken mit dem Listener-Port verbinden können.