Conditions préalables à l'intégration zéro ETL dans Oracle Database@AWS - Oracle Database@AWS

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Conditions préalables à l'intégration zéro ETL dans Oracle Database@AWS

Avant de configurer l'intégration Zero-ETL, assurez-vous de remplir les conditions préalables suivantes.

Prérequis généraux

  • AWS Configuration d'Oracle Database@ : assurez-vous qu'au moins un cluster de machines virtuelles est provisionné et en cours d'exécution.

  • Intégration avec Zero-ETL activée : assurez-vous que votre cluster de machines virtuelles ou votre cluster de machines virtuelles autonome est associé à un réseau ODB sur lequel Zero-ETL est activé.

  • Versions de base de données Oracle prises en charge : vous devez utiliser Oracle Database 19c (Oracle Exadata) ou Oracle Database 19c/23ai (base de données autonome sur infrastructure dédiée).

  • Même AWS région — La base de données Oracle source et le cluster Amazon Redshift cible doivent se trouver dans la même AWS région.

Conditions requises pour la base de données Oracle

Vous devez configurer votre base de données Oracle avec les paramètres suivants.

Configuration utilisateur de réplication

Créez un utilisateur de réplication dédié dans chaque base de données enfichable (PDB) que vous souhaitez répliquer :

  • Pour Oracle Exadata : créez un utilisateur ODBZEROETLADMIN avec un mot de passe sécurisé.

  • Pour une base de données autonome sur une infrastructure dédiée, utilisez l'GGADMINutilisateur existant.

Accordez les autorisations suivantes à l'utilisateur de réplication.

-- For Autonomous Database on Dedicated Infrastructure only ALTER USER GGADMIN ACCOUNT UNLOCK; ALTER USER GGADMIN IDENTIFIED BY ggadmin-password; -- For Oracle Exadata only GRANT SELECT ON any-replicated-table TO "ODBZEROETLADMIN"; GRANT LOGMINING to "ODBZEROETLADMIN"; -- Grant the following permissions to all services. -- For Oracle Exadata, use the ODBZEROETLADMIN user. For Autonomous Database on Dedicated Infrastructure, -- use the GGADMIN user. GRANT CREATE SESSION TO "ODBZEROETLADMIN"; GRANT SELECT ANY TRANSACTION TO "ODBZEROETLADMIN"; GRANT SELECT ON V_$ARCHIVED_LOG TO "ODBZEROETLADMIN"; GRANT SELECT ON V_$LOG TO "ODBZEROETLADMIN"; GRANT SELECT ON V_$LOGFILE TO "ODBZEROETLADMIN"; GRANT SELECT ON V_$LOGMNR_LOGS TO "ODBZEROETLADMIN"; GRANT SELECT ON V_$LOGMNR_CONTENTS TO "ODBZEROETLADMIN"; GRANT SELECT ON V_$DATABASE TO "ODBZEROETLADMIN"; GRANT SELECT ON V_$THREAD TO "ODBZEROETLADMIN"; GRANT SELECT ON V_$PARAMETER TO "ODBZEROETLADMIN"; GRANT SELECT ON V_$NLS_PARAMETERS TO "ODBZEROETLADMIN"; GRANT SELECT ON V_$TIMEZONE_NAMES TO "ODBZEROETLADMIN"; GRANT SELECT ON V_$TRANSACTION TO "ODBZEROETLADMIN"; GRANT SELECT ON V_$CONTAINERS TO "ODBZEROETLADMIN"; GRANT SELECT ON ALL_INDEXES TO "ODBZEROETLADMIN"; GRANT SELECT ON ALL_OBJECTS TO "ODBZEROETLADMIN"; GRANT SELECT ON ALL_TABLES TO "ODBZEROETLADMIN"; GRANT SELECT ON ALL_USERS TO "ODBZEROETLADMIN"; GRANT SELECT ON ALL_CATALOG TO "ODBZEROETLADMIN"; GRANT SELECT ON ALL_CONSTRAINTS TO "ODBZEROETLADMIN"; GRANT SELECT ON ALL_CONS_COLUMNS TO "ODBZEROETLADMIN"; GRANT SELECT ON ALL_TAB_COLS TO "ODBZEROETLADMIN"; GRANT SELECT ON ALL_IND_COLUMNS TO "ODBZEROETLADMIN"; GRANT SELECT ON ALL_ENCRYPTED_COLUMNS TO "ODBZEROETLADMIN"; GRANT SELECT ON ALL_LOG_GROUPS TO "ODBZEROETLADMIN"; GRANT SELECT ON ALL_TAB_PARTITIONS TO "ODBZEROETLADMIN"; GRANT SELECT ON SYS.DBA_REGISTRY TO "ODBZEROETLADMIN"; GRANT SELECT ON SYS.OBJ$ TO "ODBZEROETLADMIN"; GRANT SELECT ON DBA_TABLESPACES TO "ODBZEROETLADMIN"; GRANT SELECT ON DBA_OBJECTS TO "ODBZEROETLADMIN"; GRANT SELECT ON SYS.ENC$ TO "ODBZEROETLADMIN"; GRANT SELECT ON GV_$TRANSACTION TO "ODBZEROETLADMIN"; GRANT SELECT ON V_$DATAGUARD_STATS TO "ODBZEROETLADMIN"; GRANT SELECT ON V_$DATABASE_INCARNATION TO "ODBZEROETLADMIN"; GRANT EXECUTE ON SYS.DBMS_CRYPTO TO "ODBZEROETLADMIN"; GRANT SELECT ON SYS.DBA_DIRECTORIES TO "ODBZEROETLADMIN"; GRANT SELECT ON ALL_VIEWS TO "ODBZEROETLADMIN"; GRANT SELECT ON DBA_SEGMENTS TO "ODBZEROETLADMIN"; GRANT SELECT ON V_$TRANSPORTABLE_PLATFORM TO "ODBZEROETLADMIN"; GRANT CREATE ANY DIRECTORY TO "ODBZEROETLADMIN"; GRANT EXECUTE ON DBMS_FILE_TRANSFER TO "ODBZEROETLADMIN"; GRANT EXECUTE ON DBMS_FILE_GROUP TO "ODBZEROETLADMIN"; GRANT EXECUTE on DBMSLOGMNR to "ODBZEROETLADMIN"; GRANT SELECT on V_$LOGMNRLOGS to "ODBZEROETLADMIN"; GRANT SELECT on V_$LOGMNRCONTENTS to "ODBZEROETLADMIN"; GRANT LOGMINING to "ODBZEROETLADMIN"; GRANT SELECT ON GV_$CELL_STATE TO "ODBZEROETLADMIN";

Journalisation supplémentaire

Activez la journalisation supplémentaire sur votre base de données Oracle pour capturer les données de modification.

-- Check if supplemental logging is enabled SELECT supplemental_log_data_min FROM v$database; -- Enable supplemental logging if not already enabled. -- For Oracle Exadata, enable supplemental logging on both the CDB and PDB. -- For Autonomous Database on Dedicated Infrastructure, enable supplemental logging on the PDB only. ALTER DATABASE ADD SUPPLEMENTAL LOG DATA; -- For Autonomous Database on Dedicated Infrastructure only ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (PRIMARY KEY) COLUMNS; -- Archive current online redo log ALTER SYSTEM ARCHIVE LOG CURRENT;

Pour configurer une intégration zéro ETL entre Oracle Database@ et Amazon AWS Redshift, vous devez configurer le protocole SSL.

Pour les bases de données Oracle Exadata

Vous devez configurer manuellement le protocole SSL sur le port 2484. Cette tâche implique les opérations suivantes :

Pour les bases de données autonomes

Le protocole SSL sur le port 2484 est activé par défaut. Aucune configuration supplémentaire n’est requise.

Important

Le port SSL est fixé à 2484.

AWS prérequis de service

Avant de configurer l'intégration Zero-ETL, configurez AWS Secrets Manager et configurez les autorisations IAM.

Configurer le Gestionnaire de AWS Secrets

Stockez les informations d'identification de votre base de données Oracle dans AWS Secrets Manager comme suit :

  1. Créez une clé gérée par le client (CMK) dans le service de gestion des AWS clés.

  2. Stockez les informations d'identification de la base de données dans AWS Secrets Manager à l'aide de la clé CMK.

  3. Configurez les politiques de ressources pour autoriser l'accès à Oracle Database@AWS .

Pour obtenir l'ID et le mot de passe de votre clé TDE, utilisez la technique décrite dans Méthodes de chiffrement prises en charge pour utiliser Oracle comme source pour le Service de Migration AWS de base de données. La commande suivante génère le portefeuille base64.

base64 -i cwallet.sso > wallet.b64

L'exemple suivant montre un secret pour Oracle Exadata. Pourasm_service_name, 111.11.11.11 représente l'adresse IP virtuelle du nœud de machine virtuelle. Vous pouvez également enregistrer l'écouteur ASM avec SCAN.

{ "database_info": [ { "name": "ODBDB_ZETLPDB", "service_name": "ODBDB_ZETLPDB.paas.oracle.com", "username": "ODBZEROETLADMIN", "password": "secure_password", "tde_key_id": "ORACLE.SECURITY.DB.ENCRYPTION.key_id", "tde_password": "tde_password", "certificateWallet": "base64_encoded_wallet_content" } ], "asm_info": { "asm_user": "odbzeroetlasm", "asm_password": "secure_password", "asm_service_name": "111.11.11.11:2484/+ASM" } }

L'exemple suivant montre un secret pour une base de données autonome sur une infrastructure dédiée.

{ "database_info": [ { "database_name": "ZETLACD_ZETLADBMORECPU", "service_name": "ZETLADBMORECPU_high.adw.oraclecloud.com", "username": "ggadmin", "password": "secure_password", "certificateWallet": "base64_encoded_wallet_content" } ] }

Configuration des autorisations IAM

Créez des politiques IAM qui autorisent les opérations d'intégration sans ETL. L'exemple de politique suivant permet de décrire, de créer, de mettre à jour et de supprimer des opérations pour un cluster de machines virtuelles Exadata. Pour un cluster de machines virtuelles autonomes, utilisez la valeur cloud-autonomous-vm-cluster plutôt que cloud-vm-cluster l'ARN de la ressource.