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 da Oracle 8i o 9i ad Amazon RDS for PostgreSQL utilizzando viste materializzate e AWS DMS
Creato da Kumar Babu P G (AWS) e Pragnesh Patel (AWS)
Riepilogo
Questo modello descrive come migrare un database Oracle 8i o 9i legacy locale verso Amazon Relational Database Service (Amazon RDS) per PostgreSQL o Amazon Aurora PostgreSQL Compatible Edition.
AWS Database Migration Service (AWS DMS) non supporta Oracle 8i o 9i come sorgente, quindi questo modello utilizza un'istanza di database Oracle intermedia compatibile con AWS DMS, come Oracle 10g o 11g. Utilizza anche la funzionalità di viste materializzate per migrare i dati dall'istanza Oracle 8i/9i di origine all'istanza Oracle 10g/11g intermedia.
AWS Schema Conversion Tool (AWS SCT) converte lo schema del database e AWS DMS migra i dati nel database PostgreSQL di destinazione.
Questo modello aiuta gli utenti che desiderano migrare dai database Oracle legacy con tempi di inattività minimi del database. In questa implementazione, il tempo di inattività sarebbe limitato al tempo necessario per creare o convalidare tutte le chiavi, i trigger e le sequenze esterne sul database di destinazione.
Il modello utilizza istanze Amazon Elastic Compute Cloud (Amazon EC2) con un database Oracle 10g/11g installato per aiutare AWS DMS a trasmettere i dati. Puoi sospendere temporaneamente la replica in streaming dal database Oracle locale all'istanza Oracle intermedia per consentire ad AWS DMS di recuperare il ritardo sulla convalida dei dati o di utilizzare un altro strumento di convalida dei dati. L'istanza DB PostgreSQL e il database Oracle intermedio avranno gli stessi dati quando AWS DMS avrà terminato la migrazione delle modifiche correnti.
Prerequisiti e limitazioni
Prerequisiti
Un account AWS attivo
Un database Oracle 8i o 9i di origine in un data center locale
AWS Direct Connect configurato tra il data center locale e AWS
Driver Java Database Connectivity (JDBC) per i connettori AWS SCT installati su un computer locale o sull'istanza EC2 in cui è installato AWS SCT
Familiarità con l'uso di un database Oracle come sorgente AWS DMS
Familiarità con l'uso di un database PostgreSQL come target AWS DMS
Limitazioni
Il limite di dimensione del database è di 64 TB
Versioni del prodotto
Oracle 8i o 9i per il database di origine
Oracle 10g o 11g per il database intermedio
PostgreSQL 10.17 o versione successiva
Architettura
Stack tecnologico di origine
Database Oracle 8i o 9i
Stack tecnologico Target
Compatibile con Amazon RDS per PostgreSQL o Aurora PostgreSQL
Architettura Target

Strumenti
AWS DMS aiuta a migrare i database in modo rapido e sicuro. Il database di origine rimane pienamente operativo durante la migrazione, riducendo al minimo i tempi di inattività delle applicazioni che si basano sul database. AWS DMS può migrare i tuoi dati da e verso i database commerciali e open source più utilizzati.
AWS SCT converte automaticamente lo schema del database di origine e la maggior parte degli oggetti del codice del database, incluse viste, stored procedure e funzioni, in un formato compatibile con il database di destinazione. Gli oggetti che non possono essere convertiti automaticamente sono contrassegnati in modo chiaro in modo che possano essere convertiti manualmente per completare la migrazione. AWS SCT può anche scansionare il codice sorgente dell'applicazione alla ricerca di istruzioni SQL incorporate e convertirle come parte di un progetto di conversione dello schema del database. Durante questo processo, AWS SCT esegue l'ottimizzazione del codice nativo del cloud convertendo le funzioni legacy di Oracle e SQL Server nelle loro equivalenti AWS, per aiutarti a modernizzare le tue applicazioni durante la migrazione dei database. Una volta completata la conversione dello schema, AWS SCT può aiutare a migrare i dati da una serie di data warehouse ad Amazon Redshift utilizzando agenti di migrazione dei dati integrati.
Best practice
Per le best practice per l'aggiornamento delle viste materializzate, consulta la seguente documentazione Oracle:
Epiche
Attività | Descrizione | Competenze richieste |
---|---|---|
Configura la rete per l' EC2 istanza. | Crea il cloud privato virtuale (VPC), le sottoreti, il gateway Internet, le tabelle di routing e i gruppi di sicurezza. | AWS SysAdmin |
Crea l' EC2 istanza. | Seleziona l'Amazon Machine Image (AMI) per l' EC2 istanza. Scegli la dimensione dell'istanza e configura i dettagli dell'istanza: il numero di istanze (1), il VPC e la sottorete del passaggio precedente, assegnazione automatica dell'IP pubblico e altre opzioni. Aggiungi spazio di archiviazione, configura i gruppi di sicurezza e avvia l'istanza. Quando richiesto, create e salvate una key pair per il passaggio successivo. | AWS SysAdmin |
Installa Oracle sull' EC2 istanza. | Acquisisci le licenze e i file binari Oracle richiesti e installa Oracle 10g o 11g sull'istanza. EC2 | DBA |
Configurare la rete Oracle. | Modifica o aggiungi voci | DBA |
Crea viste materializzate. | Identifica gli oggetti del database da replicare nel database Oracle 8i/9i di origine, quindi crea viste materializzate per tutti gli oggetti utilizzando il database link. | DBA |
Implementa script per aggiornare le viste materializzate agli intervalli richiesti. | Sviluppa e distribuisci script per aggiornare le viste materializzate a intervalli richiesti sull'istanza Amazon EC2 Oracle 10g/11g. Utilizza l'opzione di aggiornamento incrementale per aggiornare le viste materializzate. | DBA |
Attività | Descrizione | Competenze richieste |
---|---|---|
Configura AWS SCT. | Crea un nuovo report, quindi connettiti a Oracle come origine e PostgreSQL come destinazione. Nelle impostazioni del progetto, apri la scheda SQL Scripting. Cambia lo script SQL di destinazione in File multipli. (AWS SCT non supporta i database Oracle 8i/9i, quindi è necessario ripristinare il dump basato solo sullo schema sull'istanza Oracle 10g/11g intermedia e utilizzarlo come sorgente per AWS SCT.) | DBA |
Convertire lo schema del database Oracle. | Nella scheda Azione, scegli Genera report, Converti schema e quindi Salva come SQL. | DBA |
Modificare gli script SQL. | Apporta modifiche in base alle migliori pratiche. Ad esempio, passa a tipi di dati adatti e sviluppa equivalenti PostgreSQL per funzioni specifiche di Oracle. | DBA, devDBA |
Attività | Descrizione | Competenze richieste |
---|---|---|
Crea l'istanza database Amazon RDS. | Nella console Amazon RDS, crea una nuova istanza DB PostgreSQL. | AWS SysAdmin, DBA |
Configura l'istanza DB. | Specificate la versione del motore DB, la classe dell'istanza DB, l'implementazione Multi-AZ, il tipo di storage e lo storage allocato. Immettere l'identificatore dell'istanza DB, un nome utente principale e una password principale. | AWS SysAdmin, DBA |
Configura rete e sicurezza. | Specificare il VPC, il gruppo di sottoreti, l'accessibilità pubblica, la preferenza della zona di disponibilità e i gruppi di sicurezza. | DBA, SysAdmin |
Configurare le opzioni del database. | Specificare il nome del database, la porta, il gruppo di parametri, la crittografia e la chiave principale. | DBA, AWS SysAdmin |
Configurare i backup. | Specificate il periodo di conservazione del backup, la finestra di backup, l'ora di inizio, la durata e se copiare i tag nelle istantanee. | AWS SysAdmin, DBA |
Configura le opzioni di monitoraggio. | Abilita o disabilita il monitoraggio avanzato e gli approfondimenti sulle prestazioni. | AWS SysAdmin, DBA |
Configura le opzioni di manutenzione. | Specificare l'aggiornamento automatico della versione secondaria, la finestra di manutenzione e il giorno, l'ora e la durata di inizio. | AWS SysAdmin, DBA |
Esegui gli script di pre-migrazione da AWS SCT. | Sull'istanza Amazon RDS for PostgreSQL di destinazione, crea lo schema del database utilizzando gli script SQL di AWS SCT con altre modifiche. Queste potrebbero includere l'esecuzione di più script e includere la creazione di utenti, la creazione di database, la creazione di schemi, tabelle, viste, funzioni e altri oggetti di codice. | AWS SysAdmin, DBA |
Attività | Descrizione | Competenze richieste |
---|---|---|
Crea un'istanza di replica in AWS DMS. | Completa i campi per il nome, la classe dell'istanza, il VPC (come per l' EC2 istanza), Multi-AZ e l'accessibilità pubblica. Nella sezione di configurazione avanzata, specifica lo storage allocato, il gruppo di sottoreti, la zona di disponibilità, i gruppi di sicurezza VPC e la chiave AWS Key Management Service (AWS KMS). | AWS SysAdmin, DBA |
Crea l'endpoint del database di origine. | Specificare il nome dell'endpoint, il tipo, il motore di origine (Oracle), il nome del server (il nome DNS privato dell' EC2 istanza), la porta, la modalità SSL, il nome utente, la password, il SID, il VPC (specificare il VPC che ha l'istanza di replica) e l'istanza di replica. Per testare la connessione, scegli Esegui test, quindi crea l'endpoint. Puoi anche configurare le seguenti impostazioni avanzate: maxFileSizee numberDataTypeScale. | AWS SysAdmin, DBA |
Connetti AWS DMS ad Amazon RDS per PostgreSQL. | Crea un gruppo di sicurezza per la migrazione per le connessioni VPCs, se il tuo database PostgreSQL si trova in un altro VPC. | AWS SysAdmin, DBA |
Crea l'endpoint del database di destinazione. | Specificare il nome dell'endpoint, il tipo, il motore di origine (PostgreSQL), il nome del server (endpoint Amazon RDS), la porta, la modalità SSL, il nome utente, la password, il nome del database, il VPC (specifica il VPC che contiene l'istanza di replica) e l'istanza di replica. Per testare la connessione, scegli Esegui test, quindi crea l'endpoint. Puoi anche configurare le seguenti impostazioni avanzate: maxFileSizee numberDataTypeScale. | AWS SysAdmin, DBA |
Crea l'attività di replica AWS DMS. | Specificare il nome dell'attività, l'istanza di replica, gli endpoint di origine e di destinazione e l'istanza di replica. Per il tipo di migrazione, scegli Migra i dati esistenti e replica le modifiche in corso. Deseleziona la casella di controllo Avvia attività alla creazione. | AWS SysAdmin, DBA |
Configura le impostazioni delle attività di replica di AWS DMS. | Per la modalità di preparazione della tabella di destinazione, scegli Non fare nulla. Interrompi l'attività dopo il completamento del caricamento completo (per creare le chiavi primarie). Specificate la modalità LOB limitata o completa e attivate le tabelle di controllo. Facoltativamente, è possibile configurare l'impostazione CommitRateavanzata. | DBA |
Configura le mappature delle tabelle. | Nella sezione Mappature delle tabelle, crea una regola di inclusione per tutte le tabelle in tutti gli schemi inclusi nella migrazione, quindi crea una regola di esclusione. Aggiungi tre regole di trasformazione per convertire i nomi di schema, tabella e colonna in lettere minuscole e aggiungi tutte le altre regole necessarie per questa migrazione specifica. | DBA |
Avvia l'attività. | Avviate l'attività di replica. Accertatevi che il carico sia in esecuzione a pieno carico. Esegui | DBA |
Esegui gli script di migrazione intermedia da AWS SCT. | In Amazon RDS for PostgreSQL, esegui i | DBA |
Riprendi l'attività per continuare l'acquisizione dei dati delle modifiche (CDC). | Esegui | DBA |
Attività | Descrizione | Competenze richieste |
---|---|---|
Controlla i log e le tabelle di convalida di AWS DMS. | Controlla e correggi eventuali errori di replica o convalida. | DBA |
Smetti di usare il database Oracle locale e le sue dipendenze. | Arresta tutte le dipendenze Oracle, spegni i listener sul database Oracle ed esegui. | DBA |
Esegui gli script di post-migrazione da AWS SCT. | In Amazon RDS for PostgreSQL, esegui questi script:. | DBA |
Completa i passaggi aggiuntivi di Amazon RDS for PostgreSQL. | Incrementa le sequenze in modo che corrispondano a quelle di Oracle, se necessario, esegui | DBA |
Apri le connessioni ad Amazon RDS for PostgreSQL. | Rimuovi i gruppi di sicurezza AWS DMS da Amazon RDS for PostgreSQL, aggiungi gruppi di sicurezza di produzione e indirizza le tue applicazioni verso il nuovo database. | DBA |
Pulisci gli oggetti AWS DMS. | Rimuovi gli endpoint, le attività di replica, le istanze di replica e l'istanza. EC2 | SysAdmin, DBA |