Esegui la migrazione dei dati da un database Oracle locale ad Aurora PostgreSQL - 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 dei dati da un database Oracle locale ad Aurora PostgreSQL

Michelle Deng e Shunan Xiang, Amazon Web Services

Riepilogo

Questo modello fornisce indicazioni per la migrazione dei dati da un database Oracle locale all'edizione compatibile con Amazon Aurora PostgreSQL. Mira a una strategia di migrazione dei dati online con tempi di inattività minimi per database Oracle da più terabyte che contengono tabelle di grandi dimensioni con attività DML (High Data Manipulation Language). Un database di standby Oracle Active Data Guard viene utilizzato come origine per scaricare la migrazione dei dati dal database primario. La replica dal database primario Oracle allo standby può essere sospesa durante il pieno carico per evitare errori ORA-01555. 

Le colonne di tabella nelle chiavi primarie (PKs) o nelle chiavi esterne (FKs), con tipo di dati NUMBER, vengono comunemente utilizzate per memorizzare numeri interi in Oracle. Ti consigliamo di convertirli in INT o BIGINT in PostgreSQL per prestazioni migliori. Puoi utilizzare AWS Schema Conversion Tool (AWS SCT) per modificare la mappatura dei tipi di dati predefinita per le colonne PK e FK. (Per ulteriori informazioni, consulta il post AWS sul blog Convertire il tipo di dati NUMBER da Oracle a PostgreSQL.) La migrazione dei dati in questo modello utilizza AWS Database Migration Service (AWS DMS) sia per l'acquisizione dei dati a pieno carico che per quella di modifica (CDC).

Puoi anche utilizzare questo modello per migrare un database Oracle locale su Amazon Relational Database Service (Amazon RDS) per PostgreSQL o un database Oracle ospitato su Amazon Elastic Compute Cloud (Amazon) verso Amazon RDS for PostgreSQL o Aurora PostgreSQL compatibile. EC2

Prerequisiti e limitazioni

Prerequisiti

Limitazioni

Versioni del prodotto

  • AWS DMS supporta tutte le edizioni del database Oracle per le versioni 10.2 e successive (per le versioni 10.x), 11g e fino a 12.2, 18c e 19c. Per l'elenco più recente delle versioni supportate, consulta Using an Oracle Database as a Source for AWS DMS nella documentazione AWS.

Architecture

Stack tecnologico di origine

  • Database Oracle locali con configurazione in standby Oracle Active Data Guard

Stack tecnologico Target

  • Compatibile con Aurora PostgreSQL 

Architettura di migrazione dei dati

Migrazione di un database Oracle verso Aurora PostgreSQL compatibile

Tools (Strumenti)

  • AWS DMS - AWS Database Migration Service (AWS DMS) supporta diversi database di origine e destinazione. Consulta Using an Oracle Database as a Source for AWS DMS nella documentazione di AWS DMS per un elenco delle versioni ed edizioni del database Oracle di origine e destinazione supportate. Se il database di origine non è supportato da AWS DMS, devi selezionare un altro metodo per la migrazione dei dati nella Fase 6 (nella sezione Epics). Nota importante: poiché si tratta di una migrazione eterogenea, è necessario innanzitutto verificare se il database supporta un'applicazione commerciale (COTS). off-the-shelf Se l'applicazione è COTS, consulta il fornitore per confermare che la compatibilità con Aurora PostgreSQL sia supportata prima di procedere. Per ulteriori informazioni, consulta le procedure dettagliate per la Step-by-Step migrazione di AWS DMS nella documentazione AWS.

  • AWS SCT - L'AWS Schema Conversion Tool (AWS SCT) facilita le migrazioni di database eterogenei convertendo automaticamente lo schema del database di origine e la maggior parte del codice personalizzato in un formato compatibile con il database di destinazione. Il codice personalizzato convertito dallo strumento include viste, procedure memorizzate e funzioni. Qualsiasi codice che lo strumento non è in grado di convertire automaticamente è contrassegnato in modo chiaro in modo che sia possibile convertirlo autonomamente. 

Epiche

OperazioneDescriptionCompetenze richieste

Convalida le versioni del database di origine e di destinazione.

DBA

Installa AWS SCT e i driver.

DBA

Aggiungi e convalida gli utenti dei prerequisiti AWS SCT e il database grants-source.

DBA

Crea un progetto AWS SCT per il carico di lavoro e connettiti al database di origine.

DBA

Genera un rapporto di valutazione e valuta la fattibilità.

DBA, proprietario dell'app
OperazioneDescriptionCompetenze richieste

Crea un database di destinazione compatibile con Aurora PostgreSQL.

DBA

Estrai l'elenco degli utenti, dei ruoli e delle concessioni dal database di origine.

DBA

Associa gli utenti esistenti del database ai nuovi utenti del database.

Proprietario dell'app

Crea utenti nel database di destinazione.

DBA

Applica i ruoli del passaggio precedente al database Aurora di destinazione compatibile con PostgreSQL.

DBA

Esamina le opzioni del database, i parametri, i file di rete e i collegamenti al database dal database di origine e valuta la loro applicabilità al database di destinazione.

DBA, proprietario dell'app

Applica tutte le impostazioni pertinenti al database di destinazione.

DBA
OperazioneDescriptionCompetenze richieste

Configura la connettività AWS SCT al database di destinazione.

DBA

Converti lo schema in AWS SCT e salva il codice convertito come file.sql.

DBA, proprietario dell'app

Converti manualmente tutti gli oggetti del database che non sono stati convertiti automaticamente.

DBA, proprietario dell'app

Ottimizza la conversione del codice del database.

DBA, proprietario dell'app

Separa il file.sql in più file.sql in base al tipo di oggetto.

DBA, proprietario dell'app

Convalida gli script SQL nel database di destinazione.

DBA, proprietario dell'app
OperazioneDescriptionCompetenze richieste

Creare un'istanza di replica di AWS DMS.

DBA

Crea gli endpoint di origine e di destinazione.

Se il tipo di dati di PKs and FKs viene convertito da NUMBER in Oracle a BIGINT in PostgreSQL, valuta la possibilità di specificare l'attributo di connessione numberDataTypeScale=-2 quando crei l'endpoint di origine.

DBA
OperazioneDescriptionCompetenze richieste

Crea lo schema e le tabelle nel database di destinazione.

DBA

Crea attività a pieno carico di AWS DMS raggruppando tabelle o suddividendo una tabella di grandi dimensioni in base alle dimensioni della tabella.

DBA

Arresta le applicazioni sui database Oracle di origine per un breve periodo.

Proprietario dell'app

Verificare che il database di standby Oracle sia sincrono con il database primario e interrompere la replica dal database primario al database di standby.

DBA, proprietario dell'app

Avvia le applicazioni sul database Oracle di origine.

Proprietario dell'app

Avvia le attività di caricamento completo di AWS DMS in parallelo dal database di standby Oracle al database Aurora compatibile con PostgreSQL.

DBA

Crea PKs indici secondari dopo il completamento del caricamento completo.

DBA

Convalida i dati.

DBA
OperazioneDescriptionCompetenze richieste

Crea attività di replica continue di AWS DMS specificando un'ora di inizio CDC o un numero di modifica del sistema (SCN) personalizzato quando lo standby di Oracle era sincronizzato con il database primario e prima che le applicazioni fossero riavviate nell'attività precedente.

DBA

Avvia le attività di AWS DMS in parallelo per replicare le modifiche in corso dal database di standby Oracle al database Aurora compatibile con PostgreSQL.

DBA

Ristabilisci la replica dal database primario Oracle al database di standby.

DBA

Monitora i log e arresta le applicazioni sul database Oracle quando il database di destinazione Aurora PostgreSQL compatibile è quasi sincrono con il database Oracle di origine.

DBA, proprietario dell'app

Interrompi le attività di AWS DMS quando la destinazione è completamente sincronizzata con il database Oracle di origine.

DBA

Crea FKs e convalida i dati nel database di destinazione.

DBA

Crea funzioni, viste, trigger, sequenze e altri tipi di oggetti nel database di destinazione.

DBA

Applica le concessioni di ruolo nel database di destinazione.

DBA
OperazioneDescriptionCompetenze richieste

Usa AWS SCT per analizzare e convertire le istruzioni SQL all'interno del codice dell'applicazione.

Proprietario dell'app

Crea nuovi server di applicazioni su AWS.

Proprietario dell'app

Esegui la migrazione del codice dell'applicazione sui nuovi server.

Proprietario dell'app

Configura il server delle applicazioni per il database e i driver di destinazione.

Proprietario dell'app

Corregge qualsiasi codice specifico del motore di database di origine dell'applicazione.

Proprietario dell'app

Ottimizza il codice dell'applicazione per il database di destinazione.

Proprietario dell'app
OperazioneDescriptionCompetenze richieste

Indirizza il nuovo server delle applicazioni verso il database di destinazione.

DBA, proprietario dell'app

Esegui controlli di integrità.

DBA, proprietario dell'app

Trasmetti in diretta.

DBA, proprietario dell'app
OperazioneDescriptionCompetenze richieste

Chiudi le risorse AWS temporanee.

DBA, amministratore di sistema

Rivedi e convalida i documenti del progetto.

DBA, proprietario dell'app

Raccogli le metriche relative al tempo di migrazione, alla percentuale di utilizzo manuale rispetto a quello degli strumenti, al risparmio sui costi e a dati simili.

DBA, proprietario dell'app

Chiudi il progetto e fornisci feedback.

DBA, proprietario dell'app

Risorse correlate

Riferimenti

Tutorial