Esegui la migrazione incrementale da Amazon RDS for Oracle ad Amazon RDS for Postgre utilizzando Oracle Developer e SQL SQL AWS SCT - Prontuario AWS

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à.

Esegui la migrazione incrementale da Amazon RDS for Oracle ad Amazon RDS for Postgre utilizzando Oracle Developer e SQL SQL AWS SCT

Creato da Pinesh Singal () AWS

Ambiente: PoC o pilota

Fonte: Amazon RDS per Oracle

Target: Amazon RDS per Postgre SQL

Tipo R: Re-architect

Carico di lavoro: Oracle

Tecnologie: migrazione; database; modernizzazione

AWSservizi: AmazonEC2; Amazon RDS

Riepilogo

Molte strategie e approcci di migrazione si svolgono in più fasi che possono durare da alcune settimane a diversi mesi. Durante questo periodo, è possibile che si verifichino ritardi dovuti all'applicazione di patch o aggiornamenti nelle istanze database Oracle di origine che si desidera migrare verso istanze DB Postgre. SQL Per evitare questa situazione, si consiglia di migrare in modo incrementale il codice del database Oracle rimanente al codice del database Postgre. SQL

Questo modello fornisce una strategia di migrazione incrementale senza tempi di inattività per un'istanza Oracle DB da più terabyte che ha un numero elevato di transazioni eseguite dopo la migrazione iniziale e che deve essere migrata su un database Postgre. SQL Puoi utilizzare l' step-by-stepapproccio di questo modello per migrare in modo incrementale un'istanza DB Amazon Relational Database Service (AmazonRDS) per Oracle verso un'istanza SQL DB Amazon RDS for Postgre senza accedere alla console di gestione di Amazon Web Services (). AWS

Il modello utilizza Oracle SQL Developer per trovare le differenze tra due schemi nel database Oracle di origine. Utilizza quindi AWS Schema Conversion Tool (AWSSCT) per convertire gli oggetti dello schema del database Amazon RDS for Oracle in oggetti dello schema del SQL database Amazon RDS for Postgre. È quindi possibile eseguire uno script Python nel prompt dei comandi di Windows per creare AWS SCT oggetti per le modifiche incrementali agli oggetti del database di origine.

Nota: prima di migrare i carichi di lavoro di produzione, ti consigliamo di eseguire un proof of concept (PoC) per l'approccio di questo pattern in un ambiente di test o non di produzione.

Prerequisiti e limitazioni

Prerequisiti

  • Un account AWS attivo.

  • Un'istanza database Amazon RDS for Oracle esistente. 

  • Un'istanza Amazon RDS for Postgree SQL DB esistente.

  • AWSSCT, installato e configurato con JDBC driver per i motori di database Oracle e SQL Postgre. Per ulteriori informazioni su questo argomento, vedere Installazione AWS SCT e installazione dei driver di database richiesti nella AWS SCT documentazione. 

  • Oracle SQL Developer, installato e configurato. Per ulteriori informazioni su questo argomento, consulta la documentazione di Oracle SQL Developer

  • Il incremental-migration-sct-sql.zip file (allegato), scaricato sul computer locale.

Limitazioni

  • I requisiti minimi per la tua istanza database Amazon RDS for Oracle di origine sono:

    • Versioni Oracle 10.2 e successive (per le versioni 10.x), 11g (versioni 11.2.0.3.v1 e successive) e fino a 12.2 e 18c per le edizioni Enterprise, Standard, Standard One e Standard Two

  • I requisiti minimi per l'istanza SQL database Amazon RDS for Postgree di destinazione sono:  

    • SQLVersioni 9.4 e successive di Postgre (per le versioni 9.x), 10.x e 11.x

  • Questo modello utilizza Oracle Developer. SQL I risultati potrebbero variare se si utilizzano altri strumenti per trovare ed esportare le differenze dello schema.

  • SQLGli script generati da Oracle SQL Developer possono generare errori di trasformazione, il che significa che è necessario eseguire una migrazione manuale.

  • Se le connessioni di test di AWS SCT origine e destinazione falliscono, assicurati di configurare le versioni dei JDBC driver e le regole in entrata affinché il gruppo di sicurezza Virtual Private Cloud (VPC) accetti il traffico in entrata.

Versioni del prodotto

  • Istanza database Amazon RDS for Oracle versione 12.1.0.2 (versione 10.2 e successive)

  • Istanza Amazon RDS for Postgree SQL DB versione 11.5 (versione 9.4 e successive)

  • Oracle SQL Developer versione 19.1 e successive

  • AWSSCTversione 1.0.632 e successive

Architettura

Stack tecnologico di origine

  • Istanza database Amazon RDS per Oracle

Stack tecnologico Target

  • Istanza Amazon RDS per Postgree DB SQL

Architettura di origine e destinazione

Il diagramma seguente mostra la migrazione di un'istanza DB Amazon RDS for Oracle verso un'istanza DB Amazon RDS for Postgre. SQL

Flusso di lavoro di migrazione da Amazon RDS per Oracle ad Amazon RDS for SQL Postgre.

Il diagramma mostra il seguente flusso di lavoro di migrazione:

  1. Apri Oracle SQL Developer e connettiti ai database di origine e di destinazione.

  2. Genera un report sulle differenze e quindi genera il file di SQL script per gli oggetti di differenza dello schema. Per ulteriori informazioni sui report sulle differenze, consulta Rapporti sulle differenze dettagliati nella documentazione di Oracle.

  3. Configura AWS SCT ed esegui il codice Python.

  4. Il file SQL degli script viene convertito da Oracle a Postgre. SQL

  5. Esegui il file di SQL script sull'istanza database Postgre di destinazione. SQL 

Automazione e scalabilità

Puoi automatizzare questa migrazione aggiungendo parametri aggiuntivi e modifiche relative alla sicurezza per più funzionalità in un unico programma allo script Python.

Strumenti

  • AWSSCT— AWS Schema Conversion Tool (AWSSCT) converte lo schema del database esistente da un motore di database a un altro.

  • Oracle SQL SQL Developer — Oracle Developer è un ambiente di sviluppo integrato (IDE) che semplifica lo sviluppo e la gestione dei database Oracle nelle implementazioni tradizionali e basate sul cloud.

Codice

Il incremental-migration-sct-sql.zip file (allegato) contiene il codice sorgente completo per questo modello.

Epiche

AttivitàDescrizioneCompetenze richieste

Esegui Database Diff in Oracle SQL Developer.

  1. Accedi all'istanza Oracle DB di origine, scegli Strumenti, quindi scegli Database Diff.

  2. Scegli il tuo database di origine in Source Connection.

  3. Scegli il database di origine aggiornato o con patch in Destination Connection.

  4. Configura le opzioni rimanenti in base alle tue esigenze, scegli Avanti, quindi scegli Fine per generare il rapporto sulle differenze.

DBA

Genera il file SQL degli script.

Scegliete Genera script per generare le differenze nei SQL file. 

Questo genera il file di SQL script che AWS SCT viene utilizzato per convertire il database da Oracle a SQL Postgre.

DBA
AttivitàDescrizioneCompetenze richieste

Configura AWS SCT con il prompt dei comandi di Windows.

  1. Copia il AWSSchemaConversionToolBatch.jar file dalla AWS SCT cartella preinstallata e incollalo nella tua directory di lavoro.

  2. Distribuisci il codice Python dal file run_aws_sct_sql.py dalla cartella (incremental-migration-sct-sql.zipallegato). Questo crea file.xml e.sct nella projects directory con i dettagli di configurazione dell'ambiente del database di origine e di destinazione. Legge anche il file di SQL script generato in Oracle Developer. SQL Infine, crea oggetti di file.sql nella directory. output

  3. Configura i dettagli di configurazione dell'ambiente di origine e di destinazione nel database_migration.txt file utilizzando il seguente formato:

#source_vendor,source_hostname,source_dbname,source_user,source_pwd,source_schema,source_port,source_sid,target_vendor,target_hostname,target_user,target_pwd,target_dbname,target_port ORACLE,myoracledb.cokmvis0v46q.us-east-1.rds.amazonaws.com,ORCL,orcl,orcl1234,orcl,1521,ORCL,POSTGRESQL,mypgdbinstance.cokmvis0v46q.us-east-1.rds.amazonaws.com,pguser,pgpassword,pgdb,5432

4. Modificate i parametri di AWS SCT configurazione in base alle vostre esigenze, quindi copiate il file SQL degli script nella directory di lavoro nella input sottodirectory.

DBA

Eseguire lo script Python.

  1. Esegui lo script Python usando il seguente comando: $ python run_aws_sct_sql.py database_migration.txt

  2. Questo crea il SQL file di oggetti DB. I codici non convertiti con errori di trasformazione possono essere convertiti manualmente.

DBA

Crea gli oggetti in Amazon RDS for Postgre SQL

Esegui i SQL file e crea oggetti nella tua istanza Amazon RDS for Postgree SQL DB.

DBA

Risorse correlate

Allegati

Per accedere al contenuto aggiuntivo associato a questo documento, decomprimi il seguente file: attachment.zip