Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Oracle einrichten GoldenGate
Um Oracle GoldenGate mithilfe von Amazon einzurichtenRDS, konfigurieren Sie den Hub auf einer EC2 Amazon-Instance und anschließend die Quell- und Zieldatenbanken. Die folgenden Abschnitte enthalten ein Beispiel für die Einrichtung von Oracle GoldenGate für die Verwendung mit Amazon RDS for Oracle.
Themen
Einrichtung eines GoldenGate Oracle-Hubs auf Amazon EC2
Um einen GoldenGate Oracle-Hub auf einer EC2 Amazon-Instance zu erstellen, erstellen Sie zunächst eine EC2 Amazon-Instance mit einer vollständigen Client-Installation von OracleRDBMS. Auf der EC2 Amazon-Instance muss auch GoldenGate Oracle-Software installiert sein. Die GoldenGate Oracle-Softwareversionen hängen von den Quell- und Zieldatenbankversionen ab. Weitere Informationen zur Installation von Oracle GoldenGate finden Sie in der GoldenGateOracle-Dokumentation
Die EC2 Amazon-Instance, die als GoldenGate Oracle-Hub dient, speichert und verarbeitet die Transaktionsinformationen aus der Quelldatenbank in Traildateien. Um diesen Prozess zu unterstützen, stellen Sie sicher, dass Sie die folgenden Bedingungen erfüllen:
-
Sie haben genügend Speicherplatz für die Pfaddateien reserviert.
-
Die EC2 Amazon-Instance verfügt über genügend Rechenleistung, um die Datenmenge zu verwalten.
-
Die EC2 Instance verfügt über ausreichend Speicher, um die Transaktionsinformationen zu speichern, bevor sie in die Trail-Datei geschrieben werden.
So richten Sie einen Oracle GoldenGate Classic Architecture Hub auf einer EC2 Amazon-Instance ein
-
Erstellen Sie Unterverzeichnisse im GoldenGate Oracle-Verzeichnis.
Starten
ggsci
Sie in der EC2 Amazon-Befehlszeilen-Shell den GoldenGate Oracle-Befehlsinterpreter. Mit dem BefehlCREATE SUBDIRS
werden die Unterverzeichnisse im/gg
-Verzeichnis für Parameter, Berichte und Prüfpunktdateien erstellt.prompt$ cd /gg prompt$ ./ggsci GGSCI> CREATE SUBDIRS
-
Konfigurieren Sie die
mgr.prm
-Datei.Im folgenden Beispiel werden der Datei
$GGHOME/dirprm/mgr.prm
Zeilen hinzugefügt.PORT 8199 PurgeOldExtracts ./dirdat/*, UseCheckpoints, MINKEEPDAYS 5
-
Starten Sie den Manager.
Im folgenden Beispiel wird
ggsci
gestartet und der Befehlstart mgr
ausgeführt.GGSCI> start mgr
Der GoldenGate Oracle-Hub ist jetzt einsatzbereit.
Einrichtung einer Quelldatenbank für die Verwendung mit Oracle GoldenGate auf Amazon RDS
Führen Sie die folgenden Aufgaben aus, um eine Quelldatenbank für die Verwendung mit Oracle einzurichten GoldenGate.
Einrichtungsschritte
- Schritt 1: Aktivieren zusätzlicher Protokollierung in der Quelldatenbank
- Schritt 2: Setzen Sie den Initialisierungsparameter ENABLE _ GOLDENGATE _ REPLICATION auf true
- Schritt 3: Festlegen des Protokollaufbewahrungszeitraums in der Quell-Datenbank
- Schritt 4: Erstellen Sie ein GoldenGate Oracle-Benutzerkonto in der Quelldatenbank
- Schritt 5: Erteilen von Berechtigungen für das Benutzerkonto in der Quelldatenbank
- Schritt 6: Fügen Sie einen TNS Alias für die Quelldatenbank hinzu
Schritt 1: Aktivieren zusätzlicher Protokollierung in der Quelldatenbank
Um die minimale zusätzliche Protokollierung auf Datenbankebene zu aktivieren, führen Sie die folgende PL/−Prozedur aus: SQL
EXEC rdsadmin.rdsadmin_util.alter_supplemental_logging(p_action => 'ADD')
Schritt 2: Setzen Sie den Initialisierungsparameter ENABLE _ GOLDENGATE _ REPLICATION auf true
Wenn Sie den ENABLE_GOLDENGATE_REPLICATION
-Initialisierungsparameter auf true
einstellen, können Datenbankdienste die logische Replikation unterstützen. Wenn sich Ihre Quelldatenbank auf einer RDS Amazon-DB-Instance befindet, stellen Sie sicher, dass Sie der DB-Instance eine Parametergruppe zugewiesen haben, deren ENABLE_GOLDENGATE_REPLICATION
Initialisierungsparameter auf true
gesetzt ist. Weitere Informationen zum Initialisierungsparameter ENABLE_GOLDENGATE_REPLICATION
finden Sie in der Oracle-Database-Dokumentation
Schritt 3: Festlegen des Protokollaufbewahrungszeitraums in der Quell-Datenbank
Erstellen Sie die Quelldatenbank unbedingt so, dass archivierte Redo-Protokolle aufbewahrt werden. Berücksichtigen Sie die folgenden Hinweise:
-
Geben Sie die Dauer für die Protokollaufbewahrung in Stunden an. Der Mindestwert ist eine Stunde.
-
Legen Sie die Dauer so fest, dass potenzielle Ausfallzeiten der Quell-Instance, jede mögliche Kommunikationsdauer und mögliche Dauer von Netzwerkproblemen für die Quell-Instance überschritten werden. Eine solche Dauer ermöglicht es Oracle, bei Bedarf Protokolle aus der Quell-Instance GoldenGate wiederherzustellen.
-
Stellen Sie sicher, dass auf Ihrer Instance genügend Speicherplatz für die Dateien vorhanden ist.
Legen Sie beispielsweise den Aufbewahrungszeitraum für archivierte Redo-Protokolle auf 24 Stunden fest.
EXEC rdsadmin.rdsadmin_util.set_configuration('archivelog retention hours',24)
Wenn die Protokollaufbewahrung nicht aktiviert ist oder wenn der Aufbewahrungswert zu klein ist, erhalten Sie eine Meldung ähnlich wie die folgende.
2022-03-06 06:17:27 ERROR OGG-00446 error 2 (No such file or directory) opening redo log /rdsdbdata/db/GGTEST3_A/onlinelog/o1_mf_2_9k4bp1n6_.log for sequence 1306 Not able to establish initial position for begin time 2022-03-06 06:16:55.
Da Ihre DB-Instance Ihre archivierten Redo-Protokolle aufbewahrt, stellen Sie sicher, dass Sie über ausreichend Speicherplatz für die Dateien verfügen. Um zu sehen, wie viel Speicherplatz Sie in der letzten Zeit verbraucht haben num_hours
Stunden, führen Sie die folgende Abfrage aus und ersetzen Sie num_hours
mit der Anzahl der Stunden.
SELECT SUM(BLOCKS * BLOCK_SIZE) BYTES FROM V$ARCHIVED_LOG WHERE NEXT_TIME>=SYSDATE-
num_hours
/24 AND DEST_ID=1;
Schritt 4: Erstellen Sie ein GoldenGate Oracle-Benutzerkonto in der Quelldatenbank
Oracle GoldenGate wird als Datenbankbenutzer ausgeführt und benötigt die entsprechenden Datenbankberechtigungen, um auf die Redo- und archivierten Redo-Logs für die Quelldatenbank zuzugreifen. Um diese bereitzustellen, erstellen Sie ein Benutzerkonto in der Quelldatenbank. Weitere Informationen zu den Berechtigungen für ein GoldenGate Oracle-Benutzerkonto finden Sie in der Oracle-Dokumentation
Mit folgenden Anweisungen wird ein Benutzerkonto mit dem Namen oggadm1
erstellt.
CREATE TABLESPACE administrator; CREATE USER oggadm1 IDENTIFIED BY "
password
" DEFAULT TABLESPACE ADMINISTRATOR TEMPORARY TABLESPACE TEMP; ALTER USER oggadm1 QUOTA UNLIMITED ON administrator;
Anmerkung
Geben Sie aus Sicherheitsgründen ein anderes Passwort als hier angegeben an.
Schritt 5: Erteilen von Berechtigungen für das Benutzerkonto in der Quelldatenbank
Bei dieser Aufgabe gewähren Sie den Datenbankbenutzern in Ihrer Quelldatenbank die erforderlichen Kontoberechtigungen.
So erteilen Sie Kontoberechtigungen in der Quelldatenbank
-
Erteilen Sie dem GoldenGate Oracle-Benutzerkonto mithilfe des SQL Befehls
grant
und derrdsadmin.rdsadmin_util
Prozedur die erforderlichen Rechtegrant_sys_object
. Mit folgenden Anweisungen werden einem Benutzer mit dem Namenoggadm1
Berechtigungen erteilt.GRANT CREATE SESSION, ALTER SESSION TO oggadm1; GRANT RESOURCE TO oggadm1; GRANT SELECT ANY DICTIONARY TO oggadm1; GRANT FLASHBACK ANY TABLE TO oggadm1; GRANT SELECT ANY TABLE TO oggadm1; GRANT SELECT_CATALOG_ROLE TO
rds_master_user_name
WITH ADMIN OPTION; EXEC rdsadmin.rdsadmin_util.grant_sys_object ('DBA_CLUSTERS', 'OGGADM1'); GRANT EXECUTE ON DBMS_FLASHBACK TO oggadm1; GRANT SELECT ON SYS.V_$DATABASE TO oggadm1; GRANT ALTER ANY TABLE TO oggadm1; -
Erteilen Sie die Rechte, die ein Benutzerkonto benötigt, um ein GoldenGate Oracle-Administrator zu sein. Führen Sie das folgende SQL PL/-Programm aus.
EXEC rdsadmin.rdsadmin_dbms_goldengate_auth.grant_admin_privilege ( grantee => 'OGGADM1', privilege_type => 'capture', grant_select_privileges => true, do_grants => TRUE);
Um Berechtigungen zu widerrufen, verwenden Sie die Prozedur
revoke_admin_privilege
im selben Paket.
Schritt 6: Fügen Sie einen TNS Alias für die Quelldatenbank hinzu
Fügen Sie $ORACLE_HOME/network/admin/tnsnames.ora
im Oracle-Standardverzeichnis den folgenden Eintrag hinzu, der vom EXTRACT
-Prozess verwendet werden soll. Weitere Informationen zur Datei tnsnames.ora
finden Sie in der Oracle-Dokumentation
OGGSOURCE= (DESCRIPTION= (ENABLE=BROKEN) (ADDRESS_LIST= (ADDRESS=(PROTOCOL=TCP)(HOST=goldengate-source.abcdef12345.us-west-2.rds.amazonaws.com)(PORT=8200))) (CONNECT_DATA=(SERVICE_NAME=ORCL)) )
Einrichtung einer Zieldatenbank für die Verwendung mit Oracle GoldenGate auf Amazon RDS
In dieser Aufgabe richten Sie eine Ziel-DB-Instance für die Verwendung mit Oracle ein GoldenGate.
Einrichtungsschritte
- Schritt 1: Setzen Sie den REPLICATION Initialisierungsparameter ENABLE GOLDENGATE _ _ auf true
- Schritt 2: Erstellen Sie ein GoldenGate Oracle-Benutzerkonto in der Zieldatenbank
- Schritt 3: Erteilen von Kontoberechtigungen in der Zieldatenbank
- Schritt 4: Fügen Sie einen TNS Alias für die Zieldatenbank hinzu
Schritt 1: Setzen Sie den REPLICATION Initialisierungsparameter ENABLE GOLDENGATE _ _ auf true
Wenn Sie den ENABLE_GOLDENGATE_REPLICATION
-Initialisierungsparameter auf true
einstellen, können Datenbankdienste die logische Replikation unterstützen. Wenn sich Ihre Quelldatenbank auf einer RDS Amazon-DB-Instance befindet, stellen Sie sicher, dass Sie der DB-Instance eine Parametergruppe zugewiesen haben, deren ENABLE_GOLDENGATE_REPLICATION
Initialisierungsparameter auf true
gesetzt ist. Weitere Informationen zum Initialisierungsparameter ENABLE_GOLDENGATE_REPLICATION
finden Sie in der Oracle-Database-Dokumentation
Schritt 2: Erstellen Sie ein GoldenGate Oracle-Benutzerkonto in der Zieldatenbank
Oracle GoldenGate wird als Datenbankbenutzer ausgeführt und benötigt die entsprechenden Datenbankberechtigungen. Um sicherzustellen, dass es über diese Berechtigungen verfügt, erstellen Sie ein Benutzerkonto in der Zieldatenbank.
Mit der folgenden Anweisung wird ein Benutzer mit dem Namen oggadm1
erstellt.
CREATE TABLESPSACE administrator; CREATE USER oggadm1 IDENTIFIED BY "
password
" DEFAULT TABLESPACE administrator TEMPORARY TABLESPACE temp; ALTER USER oggadm1 QUOTA UNLIMITED ON administrator;
Anmerkung
Geben Sie aus Sicherheitsgründen ein anderes Passwort als hier angegeben an.
Schritt 3: Erteilen von Kontoberechtigungen in der Zieldatenbank
Bei dieser Aufgabe gewähren Sie den Datenbankbenutzern in Ihrer Zieldatenbank die erforderlichen Kontoberechtigungen.
So erteilen Sie Kontoberechtigungen in der Zieldatenbank
-
Erteilen Sie dem GoldenGate Oracle-Benutzerkonto in der Zieldatenbank die erforderlichen Rechte. Im folgenden Beispiel erteilen Sie
oggadm1
Berechtigungen.GRANT CREATE SESSION TO oggadm1; GRANT ALTER SESSION TO oggadm1; GRANT CREATE CLUSTER TO oggadm1; GRANT CREATE INDEXTYPE TO oggadm1; GRANT CREATE OPERATOR TO oggadm1; GRANT CREATE PROCEDURE TO oggadm1; GRANT CREATE SEQUENCE TO oggadm1; GRANT CREATE TABLE TO oggadm1; GRANT CREATE TRIGGER TO oggadm1; GRANT CREATE TYPE TO oggadm1; GRANT SELECT ANY DICTIONARY TO oggadm1; GRANT CREATE ANY TABLE TO oggadm1; GRANT ALTER ANY TABLE TO oggadm1; GRANT LOCK ANY TABLE TO oggadm1; GRANT SELECT ANY TABLE TO oggadm1; GRANT INSERT ANY TABLE TO oggadm1; GRANT UPDATE ANY TABLE TO oggadm1; GRANT DELETE ANY TABLE TO oggadm1;
-
Erteilen Sie die Rechte, die ein Benutzerkonto benötigt, um ein GoldenGate Oracle-Administrator zu sein. Führen Sie das folgende SQL PL/-Programm aus.
EXEC rdsadmin.rdsadmin_dbms_goldengate_auth.grant_admin_privilege ( grantee => 'OGGADM1', privilege_type => 'apply', grant_select_privileges => true, do_grants => TRUE);
Um Berechtigungen zu widerrufen, verwenden Sie die Prozedur
revoke_admin_privilege
im selben Paket.
Schritt 4: Fügen Sie einen TNS Alias für die Zieldatenbank hinzu
Fügen Sie $ORACLE_HOME/network/admin/tnsnames.ora
im Oracle-Standardverzeichnis den folgenden Eintrag hinzu, der vom REPLICAT
-Prozess verwendet werden soll. Stellen Sie bei Oracle Multitenant-Datenbanken sicher, dass der TNS Alias auf den Dienstnamen von verweist. PDB Weitere Informationen zur Datei tnsnames.ora
finden Sie in der Oracle-Dokumentation
OGGTARGET= (DESCRIPTION= (ENABLE=BROKEN) (ADDRESS_LIST= (ADDRESS=(PROTOCOL=TCP)(HOST=goldengate-target.abcdef12345.us-west-2.rds.amazonaws.com)(PORT=8200))) (CONNECT_DATA=(SERVICE_NAME=ORCL)) )