Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Configurazione di Oracle GoldenGate
Per configurare Oracle GoldenGate utilizzando AmazonRDS, configura l'hub su un'EC2istanza Amazon, quindi configura i database di origine e di destinazione. Le sezioni seguenti forniscono un esempio di come configurare Oracle GoldenGate per l'utilizzo con Amazon RDS for Oracle.
Argomenti
Configurazione di un GoldenGate hub Oracle su Amazon EC2
Per creare un GoldenGate hub Oracle su un'EC2istanza Amazon, devi prima creare un'EC2istanza Amazon con un'installazione client completa di OracleRDBMS. Sull'EC2istanza Amazon deve essere installato anche GoldenGate il software Oracle. Le versioni del GoldenGate software Oracle dipendono dalle versioni del database di origine e di destinazione. Per ulteriori informazioni sull'installazione di Oracle GoldenGate, consulta la GoldenGatedocumentazione Oracle
L'EC2istanza Amazon che funge da GoldenGate hub Oracle archivia ed elabora le informazioni sulle transazioni dal database di origine in file trail. Per supportare questo processo, assicurati che siano soddisfatti i seguenti requisiti:
-
Sia stato allocato uno spazio di archiviazione sufficiente per i file trail.
-
L'EC2istanza Amazon ha una potenza di elaborazione sufficiente per gestire la quantità di dati.
-
L'EC2istanza dispone di memoria sufficiente per archiviare le informazioni sulla transazione prima di scriverle nel file trail.
Per configurare un hub di architettura GoldenGate classica Oracle su un'EC2istanza Amazon
-
Crea sottodirectory nella directory GoldenGate Oracle.
Nella shell della riga di EC2 comando di Amazon, start
ggsci
, l'interprete dei GoldenGate comandi Oracle. Il comandoCREATE SUBDIRS
crea le sottodirectory nella directory/gg
per i file dei parametri, dei report e dei punti di controllo.prompt$ cd /gg prompt$ ./ggsci GGSCI> CREATE SUBDIRS
-
Configura il file
mgr.prm
.L'esempio seguente aggiunge le righe al file
$GGHOME/dirprm/mgr.prm
.PORT 8199 PurgeOldExtracts ./dirdat/*, UseCheckpoints, MINKEEPDAYS 5
-
Avvia il manager.
L'esempio seguente avvia
ggsci
ed esegue il comandostart mgr
.GGSCI> start mgr
L' GoldenGate hub Oracle è ora pronto per l'uso.
Configurazione di un database di origine da utilizzare con Oracle GoldenGate su Amazon RDS
Completa le seguenti attività per configurare un database di origine da utilizzare con Oracle GoldenGate.
Passaggi di impostazione
Passaggio 1: attivazione della registrazione supplementare nel database di origine
Fase 2: Impostare il parametro di inizializzazione _ _ su true ENABLE GOLDENGATE REPLICATION
Passaggio 3: impostazione del periodo di conservazione del log nel database di origine
Fase 4: Creare un account GoldenGate utente Oracle nel database di origine
Passaggio 5: concessione dei privilegi all'account utente per il database di origine
Passaggio 6: aggiungere un TNS alias per il database di origine
Passaggio 1: attivazione della registrazione supplementare nel database di origine
Per attivare la registrazione supplementare minima a livello di database, eseguire la seguente procedura PL/: SQL
EXEC rdsadmin.rdsadmin_util.alter_supplemental_logging(p_action => 'ADD')
Fase 2: Impostare il parametro di inizializzazione _ _ su true ENABLE GOLDENGATE REPLICATION
Quando imposti il parametro di inizializzazione ENABLE_GOLDENGATE_REPLICATION
su true
, i servizi di database supportano la replica logica. Se il tuo database di origine si trova su un'istanza Amazon RDS DB, assicurati di avere un gruppo di parametri assegnato all'istanza DB con il parametro di ENABLE_GOLDENGATE_REPLICATION
inizializzazione impostato true
su. Per ulteriori informazioni sul parametro di inizializzazione ENABLE_GOLDENGATE_REPLICATION
, consulta la documentazione di Oracle Database
Passaggio 3: impostazione del periodo di conservazione del log nel database di origine
Assicurati di configurare il database di origine in modo che mantenga i log redo archiviati. Considera le linee guida seguenti:
-
Specifica il periodo di retention dei log in ore. Il valore minimo è 1 ora.
-
Imposta la durata su un valore superiore a eventuali potenziali tempi di inattività dell'istanza database di origine e a eventuali potenziali problemi relativi al periodo di comunicazione o di rete per l'istanza di origine. Tale durata consente a Oracle di GoldenGate recuperare i log dall'istanza di origine in base alle esigenze.
-
Assicurarsi di disporre di spazio sufficiente sulla propria istanza per i file.
Ad esempio, impostare il periodo di conservazione per i redo log archiviati su 24 ore.
EXEC rdsadmin.rdsadmin_util.set_configuration('archivelog retention hours',24)
Se non è abilitata l'opzione di conservazione dei log o il suo valore è troppo basso, riceverai un messaggio di errore simile al seguente.
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.
Poiché l'istanza database mantiene i log redo archiviati, assicurati di disporre dello spazio sufficiente per i file. Per vedere quanto spazio hai usato nell'ultima volta num_hours
ore, esegui la seguente query, sostituendo num_hours
con il numero di ore.
SELECT SUM(BLOCKS * BLOCK_SIZE) BYTES FROM V$ARCHIVED_LOG WHERE NEXT_TIME>=SYSDATE-
num_hours
/24 AND DEST_ID=1;
Fase 4: Creare un account GoldenGate utente Oracle nel database di origine
Oracle GoldenGate funziona come utente del database e richiede i privilegi di database appropriati per accedere ai redo log e ai redo log archiviati per il database di origine. A questo scopo, crea un account utente sul database di origine. Per ulteriori informazioni sulle autorizzazioni per un account GoldenGate utente Oracle, consulta la documentazione Oracle.
Le istruzioni seguenti creano un account utente denominato oggadm1
.
CREATE TABLESPACE administrator; CREATE USER oggadm1 IDENTIFIED BY "
password
" DEFAULT TABLESPACE ADMINISTRATOR TEMPORARY TABLESPACE TEMP; ALTER USER oggadm1 QUOTA UNLIMITED ON administrator;
Nota
Specifica una password diversa dal prompt mostrato qui come best practice per la sicurezza.
Passaggio 5: concessione dei privilegi all'account utente per il database di origine
In questa attività, concedi i privilegi dell'account necessari agli utenti per il database di origine.
Per concedere privilegi dell'account per il database di origine
-
Concedi i privilegi necessari all'account GoldenGate utente Oracle utilizzando il SQL comando
grant
e lardsadmin.rdsadmin_util
procedura.grant_sys_object
Le istruzioni seguenti concedono i privilegi all'utente denominatooggadm1
.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; -
Concedi i privilegi necessari a un account utente per essere un amministratore Oracle GoldenGate . Esegui il seguente programma PL/SQL.
EXEC rdsadmin.rdsadmin_dbms_goldengate_auth.grant_admin_privilege ( grantee => 'OGGADM1', privilege_type => 'capture', grant_select_privileges => true, do_grants => TRUE);
Per revocare i privilegi, utilizzare la procedura
revoke_admin_privilege
nello stesso pacchetto.
Passaggio 6: aggiungere un TNS alias per il database di origine
Aggiungi la seguente voce $ORACLE_HOME/network/admin/tnsnames.ora
in Oracle Home che sarà utilizzata dal processo EXTRACT
. Per ulteriori informazioni sul file tnsnames.ora
, consulta la documentazione di Oracle
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)) )
Configurazione di un database di destinazione da utilizzare con Oracle GoldenGate su Amazon RDS
In questo task, si configura un'istanza DB di destinazione da utilizzare con Oracle GoldenGate.
Passaggi di impostazione
Passaggio 1: imposta il parametro di REPLICATION inizializzazione ENABLE GOLDENGATE _ _ su true
Passaggio 2: crea un account GoldenGate utente Oracle sul database di destinazione
Passaggio 3: concessione dei privilegi all'account per il database di destinazione
Fase 4: Aggiungere un TNS alias per il database di destinazione
Passaggio 1: imposta il parametro di REPLICATION inizializzazione ENABLE GOLDENGATE _ _ su true
Quando imposti il parametro di inizializzazione ENABLE_GOLDENGATE_REPLICATION
su true
, i servizi di database supportano la replica logica. Se il tuo database di origine si trova su un'istanza Amazon RDS DB, assicurati di avere un gruppo di parametri assegnato all'istanza DB con il parametro di ENABLE_GOLDENGATE_REPLICATION
inizializzazione impostato true
su. Per ulteriori informazioni sul parametro di inizializzazione ENABLE_GOLDENGATE_REPLICATION
, consulta la documentazione di Oracle Database
Passaggio 2: crea un account GoldenGate utente Oracle sul database di destinazione
Oracle GoldenGate viene eseguito come utente del database e richiede i privilegi di database appropriati. A questo scopo, crea un account utente nel database di destinazione.
L'istruzione seguente crea un utente denominato oggadm1
.
CREATE TABLESPSACE administrator; CREATE USER oggadm1 IDENTIFIED BY "
password
" DEFAULT TABLESPACE administrator TEMPORARY TABLESPACE temp; ALTER USER oggadm1 QUOTA UNLIMITED ON administrator;
Nota
Specifica una password diversa dal prompt mostrato qui come best practice per la sicurezza.
Passaggio 3: concessione dei privilegi all'account per il database di destinazione
In questa attività, concedi i privilegi dell'account necessari agli utenti per il database di destinazione.
Per concedere i privilegi all'account per il database di destinazione
-
Concedi i privilegi necessari all'account GoldenGate utente Oracle sul database di destinazione. Nell'esempio seguente vengono concessi privilegi a
oggadm1
.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;
-
Concedi i privilegi necessari a un account utente per essere un amministratore Oracle GoldenGate . Esegui il seguente programma PL/SQL.
EXEC rdsadmin.rdsadmin_dbms_goldengate_auth.grant_admin_privilege ( grantee => 'OGGADM1', privilege_type => 'apply', grant_select_privileges => true, do_grants => TRUE);
Per revocare i privilegi, utilizzare la procedura
revoke_admin_privilege
nello stesso pacchetto.
Fase 4: Aggiungere un TNS alias per il database di destinazione
Aggiungi la seguente voce $ORACLE_HOME/network/admin/tnsnames.ora
in Oracle Home che sarà utilizzata dal processo REPLICAT
. Per i database Oracle Multitenant, assicurati che l'TNSalias punti al nome di servizio di. PDB Per ulteriori informazioni sul file tnsnames.ora
, consulta la documentazione di Oracle
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)) )