Questa guida rapida mostra come utilizzare Database Migration Service per eseguire la migrazione dei carichi di lavoro Oracle in Cloud SQL per PostgreSQL. Le risorse create in questa guida rapida in genere costano meno di un dollaro (USD), a condizione che tu completi i passaggi, inclusa la pulizia, in modo tempestivo.
Prima di iniziare
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Database Migration Service API.
- Assicurati di avere il ruolo Amministratore di migrazione del database assegnato al tuo account utente.
Requisiti
Database Migration Service offre una serie di opzioni per i database di origine, i database di destinazione e i metodi di connettività. Origini e destinazioni diverse funzionano meglio con alcuni metodi di connettività rispetto ad altri.
In questa guida rapida, presupponiamo che tu stia utilizzando un database Oracle autonomo in un ambiente in cui puoi configurare la tua rete per aggiungere una regola del firewall in entrata. Il database di origine può essere on-premise o in un fornitore cloud. Poiché non possiamo conoscere le specifiche del tuo ambiente, non possiamo fornire passaggi dettagliati per la configurazione di rete.
Inoltre, presupponiamo che tu voglia eseguire la migrazione dei carichi di lavoro Oracle in un database Cloud SQL per PostgreSQL.
In questa guida rapida, seleziona Lista consentita IP come metodo di rete.
Creazione di profili di connessione
Creando profili di connessione, crei record contenenti informazioni sui database di origine e di destinazione. Database Migration Service utilizza le informazioni nei profili di connessione per eseguire la migrazione dei dati dal database Oracle di origine all'istanza del database Cloud SQL per PostgreSQL di destinazione.
In questa sezione scoprirai come creare profili di connessione per:
- Un database Oracle di origine
- Un database Cloud SQL per PostgreSQL di destinazione
Crea un profilo di connessione Oracle
Vai alla pagina Profili di connessione del servizio di migrazione del database nella console Google Cloud .
Vai alla pagina Profili di connessione del servizio di migrazione del database
Fai clic su CREA PROFILO.
Nella pagina Crea un profilo di connessione, seleziona Origine dall'elenco Ruolo profilo.
Nell'elenco Motore del database, seleziona Oracle.
Fornisci le seguenti informazioni:
Nel campo Nome profilo di connessione, inserisci un nome per il profilo di connessione del database Oracle di origine, ad esempio
My Oracle Connection Profile
.Mantieni l'ID profilo di connessione generato automaticamente.
Seleziona la regione in cui è archiviato il profilo di connessione.
Inserisci il nome host o l'indirizzo IP (dominio o IP) e la porta per accedere al database Oracle di origine. (la porta Oracle predefinita è 1521).
Inserisci un nome utente e una password per autenticarti nel database di origine.
Nel campo Nome servizio, inserisci il servizio che garantisce la protezione e il monitoraggio del database Oracle di origine. Per i database Oracle, il servizio di database è in genere
ORCL
.
Fai clic su CONTINUA.
Nell'elenco Connectivity method (Metodo di connettività), seleziona un metodo di connettività di rete. Questo metodo definisce la modalità di connessione di Database Migration Service al database Oracle di origine.
Per questa guida rapida, seleziona Lista consentita IP come metodo di rete.
Fai clic su ESEGUI TEST per verificare che Database Migration Service possa comunicare con l'origine.
Se il test non va a buon fine, indica in quale parte del processo è stato rilevato un problema. Le modifiche necessarie possono essere apportate e poi testate di nuovo nella pagina Crea un profilo di connessione.
Vai alla parte del flusso in questione per correggere il problema, quindi ripeti il test.
Fai clic su CREA.
Crea un profilo di connessione Cloud SQL per PostgreSQL
Vai alla pagina Profili di connessione del servizio di migrazione del database nella console Google Cloud .
Vai alla pagina Profili di connessione del servizio di migrazione del database
Fai clic su CREA PROFILO.
Nella pagina Crea un profilo di connessione, seleziona Destinazione dall'elenco Ruolo del profilo.
Dall'elenco Motore del database, seleziona Cloud SQL per PostgreSQL (perché vuoi creare un profilo di connessione per un database Cloud SQL per PostgreSQL di destinazione).
Fornisci le seguenti informazioni:
Nel campo Nome profilo di connessione, inserisci un nome per il profilo di connessione del database Cloud SQL per PostgreSQL di destinazione, ad esempio
My Cloud SQL for PostgreSQL Connection Profile
.Mantieni l'ID profilo di connessione generato automaticamente.
Seleziona la regione in cui è archiviato il profilo di connessione.
Seleziona l'istanza Cloud SQL per PostgreSQL che vuoi utilizzare come database di destinazione della migrazione.
Inserisci il nome host o l'indirizzo IP (dominio o IP) e la porta per accedere al database di destinazione. (la porta predefinita di Cloud SQL per PostgreSQL è 5432).
Inserisci un nome utente e una password per autenticarti nel database di destinazione.
Fai clic su CONTINUA.
Nella sezione Proteggi la connessione, fai clic su Continua.
Dal menu a discesa Metodo di connettività, seleziona un metodo di connettività di rete. Questo metodo definisce la modalità di connessione di Database Migration Service al database.
Per questa guida introduttiva, seleziona IP pubblico come metodo di connettività perché utilizzi questo profilo di connessione per eseguire la migrazione dei dati da un tipo di database di origine diverso, ad esempio Oracle.
Fai clic su ESEGUI TEST per verificare che Database Migration Service possa comunicare con il database di destinazione.
Se il test non va a buon fine, indica in quale parte del processo è stato rilevato un problema. Le modifiche necessarie possono essere apportate e poi testate di nuovo nella pagina Crea un profilo di connessione.
Vai alla parte del flusso in questione per correggere il problema, quindi ripeti il test.
Fai clic su CREA.
Crea un workspace della conversione
Le aree di lavoro di conversione consentono di trasformare lo schema e gli oggetti del database di origine in un formato compatibile con il database di destinazione. Questa conversione consente a Database Migration Service di eseguire la migrazione dei dati tra i database di origine e di destinazione.
Per creare uno spazio di lavoro della conversione:
- Definisci le impostazioni per l'area di lavoro della conversione.
- Connettiti al database di origine e importa le informazioni sullo schema in Database Migration Service.
Esegui la conversione automatica con aggiustamenti facoltativi utilizzando:
- Editor area di lavoro della conversione: uno spazio di modifica in tempo reale in cui puoi modificare il codice SQL utilizzato per la conversione
- File di configurazione Ora2Pg per fornire mappature di conversione aggiuntive
Applica lo schema convertito al database di destinazione: Database Migration Service utilizza il codice SQL generato per creare tutte le entità richieste nel database di destinazione per contribuire ad assicurare che i dati di migrazione possano essere caricati correttamente nel database.
Definisci le impostazioni per lo spazio di lavoro della conversione
Vai alla pagina Spazi di lavoro di conversione del servizio di migrazione di database nella console Google Cloud .
Vai alla pagina Aree di lavoro di conversione di Database Migration Service
Fai clic su CREA SPAZIO DI LAVORO.
Fornisci le seguenti informazioni:
Nel campo Nome spazio di lavoro della conversione, inserisci un nome per lo spazio di lavoro della conversione, ad esempio
My Conversion Workspace
.Mantieni l'ID area di lavoro della conversione generato automaticamente.
Seleziona la regione in cui è archiviato lo spazio di lavoro di conversione.
L'elenco a discesa Motore del database di origine viene compilato automaticamente con Oracle.
Nell'elenco a discesa Motore del database di destinazione, seleziona Cloud SQL per PostgreSQL.
Esamina i prerequisiti richiesti che vengono generati automaticamente per riflettere la modalità di preparazione dell'ambiente per uno spazio di lavoro di conversione. Questi prerequisiti includono come:
Crea un profilo di connessione al database Oracle di origine
Configura il database Oracle di origine in modo che lo spazio di lavoro di conversione possa recuperarne i dati
(Facoltativo) Utilizza lo strumento di migrazione Ora2Pg per creare mappature aggiuntive per l'editor dello spazio di lavoro di conversione
Fai clic su CREA SPAZIO DI LAVORO E CONTINUA.
Connettiti all'origine e converti gli oggetti
Apri l'elenco a discesa Profilo di connessione di origine e seleziona il profilo di connessione che hai creato.
Fai clic su ESEGUI TEST per verificare che Database Migration Service possa comunicare con l'origine.
Se un test non va a buon fine, indica in quale parte del processo si è verificato un problema. È possibile apportare le modifiche necessarie e poi ripetere il test.
Vai alla parte del flusso in questione per correggere il problema e poi riprova.
Fai clic su Esegui il pull dello schema e continua.
Database Migration Service inizia a connettersi al database di origine per scaricare le informazioni sullo schema. Questa operazione può richiedere un paio di minuti, a seconda di fattori come la connettività di rete o le dimensioni del database.
Quando Database Migration Service ha terminato di estrarre le informazioni sullo schema, si apre la sezione Seleziona e converti oggetti.
Utilizza la visualizzazione ad albero dello schema per selezionare tutte le entità che vuoi che Database Migration Service converta in uno schema compatibile con il motore SQL del database di destinazione.
Fai clic su Converti e continua.
Database Migration Service crea l'area di lavoro di conversione ed esegue la conversione dello schema. Ora puoi visualizzare l'anteprima del codice SQL generato automaticamente nell'editor dell'area di lavoro della conversione.
Applica alla destinazione
Quando lo schema che vuoi utilizzare nel database di destinazione è stato convertito, utilizza l'opzione Applica alla destinazione per eseguire le istruzioni SQL generate sul database di destinazione:
Fai clic su Applica alla destinazione e seleziona una delle seguenti opzioni:
- Test (consigliato): questa operazione esegue una corsa di prova per verificare se lo schema può essere creato correttamente nel database di destinazione.
- Applica: questa operazione tenta di creare lo schema convertito nel database di destinazione.
Nella sezione Definisci destinazione, seleziona il profilo di connessione che fa riferimento al database di destinazione.
Fai clic su Definisci e continua.
Nella sezione Esamina gli oggetti e applica la conversione alla destinazione, seleziona gli schemi delle entità di database che vuoi creare nel database di destinazione.
Fai clic su Applica alla destinazione.
Creazione di un job di migrazione
Database Migration Service utilizza i job di migrazione per migrare i dati dall'istanza del database di origine all'istanza del database Cloud SQL per PostgreSQL di destinazione.La creazione di un job di migrazione include:
- Definizione delle impostazioni per il job
- Specifica le informazioni sul profilo di connessione che hai creato per il database di origine (profilo di connessione di origine)
- Specifica le informazioni sul profilo di connessione che hai creato per il database di destinazione (profilo di connessione di destinazione)
- Configurazione degli oggetti di cui vuoi eseguire la migrazione dal database di origine
- Testare il job di migrazione per assicurarti che i dati di connessione forniti per il job siano validi
Definisci le impostazioni per il job di migrazione
Vai alla pagina Job di migrazione del servizio di migrazione di database nella console Google Cloud .
Vai alla pagina dei job di migrazione di Database Migration Service
Fai clic su CREA JOB DI MIGRAZIONE.
Nel campo Nome job di migrazione, inserisci un nome per il job di migrazione, ad esempio
My Migration Job
.Mantieni l'ID job di migrazione generato automaticamente.
Nel menu Motore del database di origine, seleziona Oracle.
Dal menu Motore del database di destinazione, seleziona Cloud SQL per PostgreSQL.
Seleziona la Regione in cui verrà creata l'istanza di destinazione.
Esamina i prerequisiti richiesti che vengono generati automaticamente per riflettere la modalità di preparazione dell'ambiente per un job di migrazione. Questi prerequisiti possono includere la configurazione del database di origine e la connessione all'istanza di database Cloud SQL per PostgreSQL di destinazione. È preferibile completare questi prerequisiti in questo passaggio, ma puoi farlo in qualsiasi momento prima di testare o avviare il job di migrazione. Per ulteriori informazioni su questi prerequisiti, consulta Configurare il database Oracle di origine.
Fai clic su SALVA E CONTINUA.
Definisci le impostazioni dell'origine
Nella pagina Definisci l'origine, svolgi i seguenti passaggi:
- Nel menu a discesa Profilo di connessione di origine, seleziona il profilo di connessione di origine per l'istanza Oracle.
- Fai clic su Salva e continua.
- (Facoltativo) Nella sezione Testa profilo di connessione, fai clic su Esegui test per verificare se Database Migration Service può stabilire una connessione di rete con l'istanza di origine.
Puoi creare il job di migrazione anche se il test di connessione non va a buon fine, ma devi risolvere eventuali problemi di connettività prima di eseguire il job di migrazione.
- Nella sezione Personalizza configurazione dell'origine, configura le seguenti impostazioni:
- Nella sezione Configurazione del dump completo, seleziona Automatico.
- In Impostazioni di lettura dell'origine, utilizza le predefinite per la concorrenza suggerite.
- Fai clic su Salva e continua.
Definire le impostazioni di destinazione
Nella pagina Definisci la tua destinazione, svolgi i seguenti passaggi:
- Nel menu a discesa Profilo di connessione di destinazione, seleziona il profilo di connessione di destinazione.
- Fai clic su Salva e continua.
- (Facoltativo) Nella sezione Testa profilo di connessione, fai clic su Esegui test per verificare se Database Migration Service può stabilire una connessione di rete alla destinazione.
Puoi creare il job di migrazione anche se il test di connessione non va a buon fine, ma devi risolvere eventuali problemi di connettività prima di eseguirlo.
- Nella sezione Personalizza configurazione della destinazione, configura le seguenti impostazioni:
- Nella sezione Numero massimo di connessioni contemporanee di destinazione, utilizza i valori predefiniti per la concorrenza suggeriti.
- Nella sezione Timeout transazioni, utilizza i valori predefiniti del timeout suggeriti.
- Fai clic su Salva e continua.
Seleziona gli oggetti di cui eseguire la migrazione
Seleziona lo spazio di lavoro per le conversioni dall'elenco a discesa Spazio di lavoro per le conversioni.
Dopo aver selezionato uno spazio di lavoro di conversione, la regione Seleziona gli oggetti di cui eseguire la migrazione della pagina elenca tutti gli oggetti (schemi e tabelle) del database di origine Oracle di cui è possibile eseguire la migrazione nella destinazione.
Seleziona dall'elenco gli oggetti del database di cui vuoi che Database Migration Service esegua la migrazione.
Fai clic su SALVA E CONTINUA.
Testa e crea il job di migrazione
Esamina le impostazioni che hai scelto per il job di migrazione.
Fai clic su TEST JOB per verificare che:
L'origine è stata configurata in base ai prerequisiti.
Database Migration Service è in grado di connettersi all'origine.
Database Migration Service è in grado di connettersi alla destinazione.
Il job di migrazione è valido e le versioni di origine e di destinazione sono compatibili.
Se il test non va a buon fine, puoi risolvere il problema nella parte appropriata del flusso e riprovare.
Fai clic su CREA E AVVIA JOB per creare il job di migrazione e avviarlo immediatamente.
Fai clic su CREA E AVVIA nella finestra di dialogo successiva.
Nella pagina Job di migrazione, verifica che lo stato del job di migrazione sia "Avvio". Dopo alcuni minuti, verifica che lo stato cambi in "In esecuzione".
Verifica il job di migrazione
In questa sezione, confermi che Database Migration Service ha utilizzato il job di migrazione per eseguire la migrazione dei dati dall'istanza del database di origine all'istanza del database Cloud SQL per PostgreSQL di destinazione.
Verificare utilizzando lo strumento di convalida dei dati
Esiste uno strumento di convalida dei dati open source che puoi utilizzare per convalidare più da vicino la corrispondenza dei dati tra l'origine e la destinazione.
I passaggi riportati di seguito mostrano un esempio minimo per eseguire convalide più precise:
Esegui il deployment o utilizza una macchina virtuale con accesso sia all'origine che alla destinazione.
Nella macchina virtuale, crea una cartella in cui installare lo strumento di convalida dei dati.
Vai a questa cartella.
Utilizza pip per installare lo strumento di convalida dei dati.
pip install google-pso-data-validator
Crea connessioni al database Oracle di origine e al database Cloud SQL per PostgreSQL di destinazione.
data-validation connections add -c source Oracle --host 'ip-address' --port port --user username --password pswd --database database-name data-validation connections add -c target Postgres --host 'ip-address' --port port --user username --password pswd --database database-name
Ad esempio:
data-validation connections add -c source Oracle --host '10.10.10.11' --port 1521 --user system --password pswd --database XE data-validation connections add -c target Postgres --host '10.10.10.12' --port 5432 --user postgres --password pswd --database postgres
Crea o genera un elenco di tabelle per confrontare i dati tra i database di origine e di destinazione.
export TABLES_LIST=$(data-validation find-tables --source-conn target --target-conn target --allowed-schemas schema-name)
Ad esempio:
export TABLES_LIST=$(data-validation find-tables --source-conn target --target-conn target --allowed-schemas public)
Esegui la convalida completa di tutte le tabelle.
data-validation validate column --source-conn source --target-conn target --tables-list "${TABLES_LIST}"
Ti consigliamo di eseguire questa convalida durante la replica per garantire una relativa coerenza. Le query sulle tabelle di grandi dimensioni potrebbero richiedere troppo tempo per essere eseguite durante un breve periodo di promozione. In questi casi, utilizza lo strumento di convalida dei dati per aggiungere filtri per ridurre il tempo di esecuzione o prepara l'elenco di tabelle in modo da includere un sottoinsieme di tabelle per la convalida finale.
Ciò conferma che Database Migration Service ha eseguito la migrazione dei dati.
Finalizzare la migrazione
Per le migrazioni continue, finalizza il job di migrazione quando vuoi iniziare a utilizzare l'istanza di destinazione per la tua applicazione.
Puoi utilizzare il pulsante Esegui promozione nella pagina dei dettagli del job di migrazione per consentire a Database Migration Service di ripulire tutti i dati di migrazione temporanei e promuovere la destinazione.
Torna alla pagina Job di migrazione.
Fai clic sul job di migrazione che hai creato in questa guida rapida. Rappresenta la migrazione che vuoi finalizzare. Viene visualizzata la pagina Dettagli job di migrazione.
Utilizza lo strumento di convalida dei dati per monitorare il ritardo nella replica controllando i conteggi delle righe.
Attendi che il ritardo nella replica tenda a diminuire in modo significativo, idealmente nell'ordine di minuti o secondi. Il ritardo nella replica è disponibile per la revisione nella pagina Job di migrazione.
Quando il ritardo nella replica è minimo, avvia il passaggio. Per evitare la perdita di dati, assicurati di:
Interrompi tutte le scritture, gli script in esecuzione e le connessioni dei client al database di origine. Inizia il periodo di tempo di riposo.
Attendi che il ritardo di replica sia pari a zero, il che significa che il job di migrazione ha elaborato tutte le modifiche in sospeso.
Puoi finalizzare una migrazione anche se il ritardo nella replica non è pari a zero. In questo modo puoi ridurre il tempo di riposo del database, ma l'accuratezza dei dati nella destinazione potrebbe essere interessata.
- Nella pagina dei dettagli del job di migrazione, fai clic su Esegui promozione e poi conferma l'azione nella finestra Eseguire promozione del job di migrazione?.
Il job di migrazione interrompe la lettura dal database di origine. Database Migration Service promuove l'istanza di destinazione Cloud SQL per PostgreSQL per ripulire tutti i dati di migrazione temporanei. Questa procedura può richiedere diversi minuti.
Al termine del processo di promozione, lo stato del job di migrazione diventa Completato.
Ora puoi collegare l'applicazione all'istanza Cloud SQL per PostgreSQL di destinazione ed eliminare in sicurezza il job di migrazione.
L'istanza del database Cloud SQL per PostgreSQL è pronta per l'uso.
Esegui la pulizia
Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questa pagina, segui questi passaggi.
- Utilizza la console Google Cloud per eliminare il job di migrazione, lo spazio di lavoro di conversione, i profili di connessione, l'istanza Cloud SQL per PostgreSQL di destinazione e il progetto se non ti servono.
Passaggi successivi
- Scopri di più su come gestire i profili di connessione.
- Scopri di più su come gestire gli spazi di lavoro della conversione.
- Scopri di più sugli stati dei job di migrazione.