Oracle Data Guard Far Sync: - kein Datenverlust

by Vivek Dhiman. Oracle Database Administrator, Rackspace Technology

Einführung

In diesem Blog bespreche ich eine Funktion von Oracle® for Data Guard, Far Sync. Oracle hat diese neue Konfiguration entwickelt, um den synchronen Redo-Transport zwischen der primären und der Standby-Datenbank zu unterstützen, die physikalisch weit voneinander entfernt sind. Diese Technik in Oracle 12c stellt sicher, dass es keine Datenverluste gibt und dass primäre Datenbanken, die sich in beliebiger Entfernung befinden, geschützt sind.

Die Funktion nimmt ein Redo von einer primären Datenbank an und sendet das Redo an den Standby-Server. Da die Far Sync-Instanz keine Datendateien enthält, können Sie sie in Zukunft nicht als Primär- oder Standby-Instanz öffnen. Die Far-Sync-Instanz minimiert die Auswirkungen auf die Antwortzeit bei Übertragungen, indem sie diese Zeit auf einen akzeptablen Schwellenwert mit höherem Datenschutz reduziert.  

Architekturführer

Die folgende Abbildung zeigt ein Beispiel für die Far Sync-Architektur:

< Drupal-Entität data-align="left" data-embed-button="media_entity_embed" data-entity-embed-display="view_mode:media.full" data-entity-type="media" data-entity-uuid="ffc70d81-8bc0-42e9-b646-2faec089e354" data-langcode="en"> < /drupal-entity>

Bildquelle

Benutzerdefinierte Konfigurationen.

Um Far Sync zu konfigurieren, führen Sie die folgenden Schritte aus.

     1. Erstellen Sie eine Far Sync-Steuerdatei von einer Primärdatei und kopieren Sie sie auf den Far Sync-Server

Führen Sie den folgenden Code aus:

ALTER DATABASE CREATE FAR SYNC INSTANCE CONTROLFILE AS '/home/oracle/farsync.ctl';

2. Hängen Sie die Far Sync-Instanz mit der von Ihnen erstellten Far Sync-Steuerdatei ein

Wählen Sie die Rolle Far Sync, indem Sie den folgenden Code ausführen:

    SQL  > select database_role from v$database;     DATABASE_ROLE     ------     FAR SYNC

3. Parameter für die primäre Datenbank festlegen

Fügen Sie auf der primären Datenbank die folgenden Parameter in die init-Datei ein:

    LOG_ARCHIVE_CONFIG='DG_CONFIG=(oderaprimär,oderafarsync,oderastandby)' scope=both;     LOG_ARCHIVE_DEST_2='SERVICE=farsync SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=orafarsync'     LOG_ARCHIVE_DEST_1='LOCATION=USE_DB_RECOVERY_FILE_DEST VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=oraprimary

4. Parameter für Far Sync einstellen

Fügen Sie in der Far-Sync-Instanz die folgenden Parameter in die init-Datei ein:

    LOG_ARCHIVE_CONFIG='DG_CONFIG=(primary,farsync,standby)'     LOG_ARCHIVE_DEST_2='SERVICE=standby ASYNC VALID_FOR=( STANDBY_LOGFILES,STANDBY_ROLE) DB_UNIQUE_NAME=orastandby'     LOG_ARCHIVE_DEST_1='LOCATION= USE_DB_RECOVERY_FILE_DEST VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=orafarsync'

5. Parameter für die Standby-Datenbank festlegen

Fügen Sie auf der Standby-Datenbank die folgenden Parameter zur init-Datei hinzu:

    LOG_ARCHIVE_CONFIG='DG_CONFIG=(primary,farsync,standby)'     LOG_ARCHIVE_DEST_2='SERVICE=primary ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=oraprimär'     LOG_ARCHIVE_DEST_1='LOCATION= USE_DB_RECOVERY_FILE_DEST VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=orastandby'

Fazit

Die Funktion Far Sync hilft bei der Konfiguration einer verlustfreien Standby-Datenbank über große Entfernungen für Unternehmen. Es hilft auch, Hemmungen zu überwinden und das Vertrauen von Unternehmen zu gewinnen, die der Meinung sind, dass ein Null-Datenverlust nicht realistisch sein kann, und die sich um die Datenbankleistung sorgen.

Eine Far-Sync-Instanz entlastet die primäre Datenbank auch von dem Overhead, der durch das Auflösen von Lücken in den archivierten Protokollen entsteht, die von der entfernten Standby-Datenbank empfangen werden. Die Instanz kann WAN-Bandbreite sparen, indem sie eine Redo-Transportkomprimierung durchführt, ohne die Leistung der primären Datenbank zu beeinträchtigen (Off-Host-Komprimierung).

Erfahren Sie mehr über unsere AWS-Services