Esercitazione: eseguire la migrazione da Database di Azure per PostgreSQL - Da server singolo a server flessibile con il servizio di migrazione
SI APPLICA A: Database di Azure per PostgreSQL - Server flessibile
Usando il portale di Azure, è possibile eseguire la migrazione di un'istanza di Database di Azure per PostgreSQL – Server singolo a Database di Azure per PostgreSQL – Server flessibile. In questa esercitazione viene eseguita la migrazione di un database di esempio da un server singolo di Database di Azure per PostgreSQL a un server flessibile di PostgreSQL usando il portale di Azure.
- Configurare il server flessibile di Database di Azure per PostgreSQL
- Configurare l'attività di migrazione
- Monitorare la migrazione
- Annullare la migrazione
- Dopo la migrazione
È possibile eseguire la migrazione con il portale di Azure.
Prerequisiti (offline)
Prima di iniziare la migrazione con il servizio di migrazione in Database di Azure per PostgreSQL, è essenziale soddisfare i prerequisiti seguenti, che si applicano agli scenari di migrazione offline.
Verificare la versione di origine
La versione di origine di PostgreSQL deve essere >= 9.5
. Se la versione di origine di PostgreSQL è precedente alla versione 9.5
, aggiornare la versione di origine di PostgreSQL alla versione 9.5
o a una versione successiva prima della migrazione.
Configurazione della destinazione
Il server flessibile di Database di Azure per PostgreSQL deve essere distribuito e configurato correttamente in Azure prima di iniziare il processo di migrazione.
Lo SKU scelto per Database di Azure per PostgreSQL deve corrispondere alle specifiche del database di origine per garantire compatibilità e prestazioni adeguate.
Per istruzioni dettagliate sulla creazione di un nuovo Database di Azure per PostgreSQL, vedere il collegamento seguente: Avvio rapido: Creare un server.
Quando si esegue la migrazione tra le versioni di PostgreSQL (principale o secondaria), assicurarsi la compatibilità tra il database e l'applicazione esaminando le note sulla versione per individuare potenziali modifiche di rilievo.
Configurazione della rete
La configurazione di rete è fondamentale per il corretto funzionamento del servizio di migrazione. Assicurarsi che il server PostgreSQL di origine possa comunicare con il server di Database di Azure per PostgreSQL di destinazione. Le configurazioni di rete seguenti sono essenziali per una corretta migrazione.
Per informazioni sul setup di rete, vedere Guida alla rete per il servizio di migrazione.
Abilitare le estensioni
Per garantire una migrazione corretta usando il servizio di migrazione in Database di Azure per PostgreSQL, potrebbe essere necessario verificare le estensioni per l'istanza di PostgreSQL di origine. Le estensioni offrono funzionalità e funzionalità che potrebbero essere necessarie per l'applicazione. Assicurarsi di verificare le estensioni nell'istanza di PostgreSQL di origine prima di avviare il processo di migrazione.
Nell'istanza di destinazione di Database di Azure per PostgreSQL - Server flessibile abilitare le estensioni supportate identificate nell'istanza di PostgreSQL di origine.
Per altre informazioni, vedere Estensioni in Database di Azure per PostgreSQL.
Nota
Quando si apportano modifiche al shared_preload_libraries
parametro, è necessario un riavvio.
Controllare i parametri del server
Questi parametri non vengono migrati automaticamente nell'ambiente di destinazione e devono essere configurati manualmente.
Associare i valori dei parametri del server del database PostgreSQL di origine a Database di Azure per PostgreSQL accedendo alla sezione Parametri del server nel portale di Azure e aggiornando manualmente i valori di conseguenza.
Salvare le modifiche del parametro e, se necessario, riavviare il server flessibile di Database di Azure per PostgreSQL per applicare la nuova configurazione.
Importante
Modificare il parametro del server password_encryption nel server flessibile da SCRAM-SHA-256 a MD5 prima di iniitarla. Questa operazione è essenziale per il funzionamento delle credenziali esistenti in un singolo server nel server flessibile.
Disabilitare la disponibilità elevata (affidabilità) e le repliche in lettura nella destinazione
La disabilitazione della disponibilità elevata (affidabilità) e della lettura delle repliche nell'ambiente di destinazione è essenziale. Queste funzionalità devono essere abilitate solo dopo il completamento della migrazione.
Seguendo queste linee guida, è possibile garantire un processo di migrazione senza problemi senza le variabili aggiunte introdotte dalla disponibilità elevata e dalle repliche in lettura. Una volta completata la migrazione e quando il database è stabile, è possibile abilitare queste funzionalità per migliorare la disponibilità e la scalabilità dell'ambiente del database in Azure.
Configurare il server flessibile di Database di Azure per PostgreSQL
Creare il server flessibile di destinazione. Per consultare la procedura guidata, vedere Creare un server flessibile di Database di Azure per PostgreSQL usando il portale.
Le estensioni nell'elenco elementi consentiti devono essere caricate nelle librerie all'avvio del server. È essenziale che l'estensione si trovi nell'elenco elementi consentiti prima di avviare una migrazione.
Controllare se la distribuzione dei dati tra le tabelle di un database è asimmetrica, con la maggior parte dei dati presenti in una sola o in poche tabelle. In caso di asimmetria, la velocità di migrazione potrebbe risultare più lenta del previsto. In questo caso, la velocità di migrazione può essere aumentata eseguendo la migrazione della tabella di grandi dimensioni in parallelo.
Configurare l'attività di migrazione
Il servizio di migrazione include un'esperienza semplice di procedura guidata nel portale di Azure. Ecco come iniziare:
Aprire il Web browser e passare al portale. Per accedere, immettere le credenziali. La visualizzazione predefinita è il dashboard del servizio.
Passare alla destinazione del server flessibile di Database di Azure per PostgreSQL.
Nel scheda Panoramica del server flessibile, nel menu a sinistra, scorrere fino a Migrazione e selezionare questa opzione.
Selezionare il pulsante Crea per avviare una migrazione da un singolo server a un server flessibile. Se si usa il servizio di migrazione per la prima volta, viene visualizzata una griglia vuota con un prompt per iniziare la prima migrazione.
Se sono già state create migrazioni verso la destinazione del server flessibile, la griglia contiene informazioni sulle migrazioni che sono state tentate verso questa destinazione dal server singolo.
Si passa attraverso una serie di schede di procedura guidata per creare una migrazione in questa destinazione del server flessibile da diverse fonti possibili. Per impostazione predefinita, il tipo di server di origine è impostato su Database di Azure per PostgreSQL server singolo, ovvero quello a cui si è interessati per questo scenario.
In alternativa, è possibile iniziare il processo di migrazione dal server singolo di Database di Azure per PostgreSQL.
Aprire il Web browser e passare al portale. Per accedere, è necessario immettere le credenziali. La visualizzazione predefinita è il dashboard del servizio.
Quando si seleziona il server singolo, è possibile osservare un banner relativo alla migrazione nella scheda Panoramica. Selezionare Eseguire la migrazione ora per iniziare.
Viene visualizzata una pagina con due opzioni. Se il server flessibile è già stato creato e lo si vuole usare come destinazione, scegliere Seleziona esistente e selezionare i dettagli relativi a Sottoscrizione, Gruppo di risorse e Nome del server corrispondenti. Dopo aver effettuato le selezioni, selezionare Vai alla migrazione guidata e seguire le istruzioni nella sezione Configurazione.
Se si sceglie di creare un nuovo server flessibile, selezionare Crea nuovo e Vai alla creazione guidata. Questa azione avvia il processo di creazione del server flessibile e distribuisce il server flessibile.
Dopo aver distribuito il server flessibile, seguire i passaggi da 3 a 5 in Configurare l'attività di migrazione.
Attrezzaggio
La prima scheda è Configurazione. In caso di mancato recapito, consentire le estensioni necessarie come descritto in Configurare il server flessibile di Database di Azure per PostgreSQL prima di avviare una migrazione.
Nome migrazione è l'identificatore univoco per ogni migrazione verso questa destinazione del server flessibile. Questo campo accetta solo caratteri alfanumerici e non accetta caratteri speciali tranne il trattino basso (_) e quello alto (-). Il nome deve iniziare con un carattere alfanumerico. Il nome deve anche essere univoco per un server di destinazione, perché nessuna delle due migrazioni alla stessa destinazione server flessibile può avere lo stesso nome.
Tipo del server di origine indica l'origine. In questo caso, si tratta del server singolo di Database di Azure per PostgreSQL
Opzione di migrazione consente di eseguire delle convalide prima di attivare una migrazione. È possibile scegliere una qualsiasi delle opzioni seguenti.
- Convalida: controlla l'idoneità del server e del database per la migrazione alla destinazione.
- Esegui migrazione: ignora le convalide e avvia la migrazione.
- Convalida ed esegui migrazione: esegue la convalida prima di attivare una migrazione. La migrazione viene attivata solo se non ci sono errori di convalida.
È sempre consigliabile scegliere l'opzione Convalida o Convalida ed esegui migrazione per eseguire le convalide preventive prima di eseguire la migrazione.
La modalità di migrazione consente di scegliere tra una migrazione online e una migrazione offline, in questo caso deve essere impostata su Offline.
Selezionare il pulsante Avanti: Selezionare Server di runtime.
Runtime server
Il server di runtime della migrazione è una funzionalità specializzata all'interno del servizio di migrazione di Database di Azure per PostgreSQL, progettata per fungere da server intermedio durante la migrazione. Si tratta di un'istanza separata dall'istanza di Database di Azure per PostgreSQL - Server flessibile, che non rappresenta il server di destinazione, ma viene utilizzata per facilitare la migrazione dei database da un ambiente di origine accessibile solo tramite rete privata.
Per altre informazioni sul runtime server, visitare Runtime server di migrazione.
Selezionare il pulsante Avanti: Connetti all'origine.
Connettersi all’origine
La sezione Origine richiede di specificare i dettagli relativi al server singolo, che è l'origine dei database.
Dopo aver selezionato la sottoscrizione e il gruppo di risorse, l'elenco a discesa per i nomi dei server mostra i server singoli in tale gruppo di risorse tra aree. Selezionare l'origine da cui si desidera eseguire la migrazione. È possibile eseguire la migrazione dei database da un server singolo a un server flessibile di destinazione nella stessa area. Le migrazioni tra aree sono abilitate solo per i server di India, Cina ed Emirati Arabi Uniti.
Dopo aver scelto l'origine server singolo, le caselle Percorso e versione di PostgreSQL vengono popolate automaticamente. Assicurarsi di specificare le credenziali di un ruolo di amministratore, perché è necessario per consentire al servizio di migrazione di eseguire correttamente la migrazione dei database.
Il campo FQDN/IP personalizzato è facoltativo e può essere usato quando l'origine si trova dietro un server DNS personalizzato o dispone di spazi dei nomi DNS personalizzati, rendendolo accessibile solo tramite FQDN o indirizzi IP specifici. Ad esempio, può includere voci come singleserver.example.com
, 198.1.0.2
o un FQDN PostgreSQL, singleserver.postgres.database.azure.com
ad esempio , se il server DNS personalizzato contiene la zona postgres.database.azure.com
DNS o inoltra le query per questa zona a 168.63.129.16
, dove il nome di dominio completo viene risolto nella zona DNS pubblica o privata di Azure.
Dopo aver compilato tutti i campi, selezionare il collegamento Connetti all'origine. In questo modo viene verificato che i dettagli del server di origine immessi siano corretti e che il server di origine sia raggiungibile.
Selezionare il pulsante Avanti: Selezionare la destinazione di migrazione per continuare.
Selezionare la destinazione di migrazione
La sezione Selezione destinazione della migrazione mostra i metadati della destinazione del server flessibile, ad esempio il nome della sottoscrizione, il gruppo di risorse, il nome del server, la posizione e la versione di PostgreSQL.
Il campo FQDN/IP personalizzato è facoltativo e può essere usato quando la destinazione si trova dietro un server DNS personalizzato o dispone di spazi dei nomi DNS personalizzati, rendendolo accessibile solo tramite FQDN o indirizzi IP specifici. Ad esempio, può includere voci come flexibleserver.example.com
, 198.1.0.2
o un FQDN PostgreSQL, flexibleserver.postgres.database.azure.com
ad esempio , se il server DNS personalizzato contiene la zona postgres.database.azure.com
DNS o inoltra le query per questa zona a 168.63.129.16
, dove il nome di dominio completo viene risolto nella zona DNS pubblica o privata di Azure.
Scegliere i valori appropriati per Metodo di autenticazione e tutti i campi correlati all'autenticazione. Assicurarsi che l'identità fornita sia quella dell'utente amministratore nel server di destinazione. Dopo aver compilato tutte le informazioni necessarie, selezionare il collegamento Connetti alla destinazione. In questo modo viene verificato che i dettagli del server di destinazione immessi siano corretti e che il server di destinazione sia raggiungibile.
Selezionare il pulsante Avanti: Selezionare i database per la migrazione per selezionare i database di cui eseguire la migrazione.
Selezionare database per la migrazione
In questa scheda è presente un elenco di database utente all'interno del server singolo. È possibile selezionare fino a otto database ed eseguirne la migrazione in un solo tentativo di migrazione. Se sono presenti più di otto database utente, il processo di migrazione viene ripetuto tra i server di origine e di destinazione per il set di database successivo. I database selezionati presenti nel server di destinazione con gli stessi nomi vengono sovrascritti.
Selezionare il pulsante Avanti: Riepilogo per esaminare i dettagli.
Riepilogo
La scheda Riepilogo riepiloga tutti i dettagli per la creazione della convalida o della migrazione. Esaminare i dettagli e selezionare il pulsante Avvia convalida e migrazione.
Monitorare il portale della migrazione
Dopo aver avviato la migrazione, viene visualizzata una notifica che indica che la convalida o la creazione della migrazione ha esito positivo. Si viene reindirizzati automaticamente alla pagina Migrazione del server flessibile. Qui è disponibile una nuova voce per la convalida o la migrazione creata di recente.
La griglia che mostra le migrazioni include queste colonne: Nome, Stato, Modalità di migrazione, Tipo di migrazione, Server di origine, Tipo del server di origine, Database, Ora inizio e Durata. Le voci vengono visualizzate nell'ordine decrescente dell'ora di inizio con la voce più recente in alto.
È possibile usare il pulsante Aggiorna per aggiornare lo stato della convalida o della migrazione.
È anche possibile selezionare il nome di una particolare migrazione nella griglia per visualizzare i dettagli associati.
Quando viene creata la convalida o la migrazione, questa passa allo stato InProgress e allo stato secondario PerformingPreRequisiteSteps. Il flusso di lavoro richiede 2-3 minuti per configurare l'infrastruttura di migrazione e le connessioni di rete.
Si esaminerà ora come monitorare le migrazioni per ogni opzione di migrazione.
Convalida
Quando lo stato secondario PerformingPreRequisiteSteps viene completato, la convalida passa allo stato secondario Validation in Progress in cui vengono eseguiti i controlli sul server di origine e di destinazione per valutare l'idoneità per la migrazione.
La convalida passa allo stato Succeeded se tutte le convalide hanno lo stato Succeeded o Warning.
La griglia di convalida contiene le informazioni seguenti:
- Le sezioni Dettagli di convalida per istanza e Dettagli di convalida per i database, che rappresentano le regole di convalida usate per controllare l'idoneità della migrazione.
- Nome convalida: nome di ogni regola di convalida specifica.
- Stato di convalida: rappresenta il risultato per ogni regola e può avere uno di questi tre valori:
- Riuscita: se non sono stati rilevati errori.
- Non riuscita: se sono presenti errori di convalida.
- Avviso: se sono presenti avvisi di convalida.
- Durata: tempo impiegato per l'operazione di convalida.
- Ora di inizio (UTC) e Ora di fine (UTC): ora di inizio e fine dell'operazione di convalida in formato UTC.
Lo stato di convalida passa a Failed in caso di errori nella convalida. Selezionare il nome della convalida o il nome del database della convalida non riuscita. Un riquadro di fan-out fornisce i dettagli e l'azione correttiva da eseguire per evitare questo errore.
Migrate
Al termine dello stato secondario PerformingPreRequisiteSteps, la migrazione passa allo stato secondario Migrazione dei dati quando viene eseguita la clonazione/copia dei database. Il tempo necessario per il completamento della migrazione dipende dalle dimensioni e dalla forma dei database di cui si esegue la migrazione. La migrazione è rapida se i dati vengono distribuiti principalmente in modo uniforme in tutte le tabelle. Le tabelle con dimensioni asimmetriche richiedono un tempo relativamente più lungo.
Quando si seleziona uno dei database nella migrazione, viene visualizzato un riquadro di fan-out. Include tutti i conteggi relativi alle tabelle (tabelle copiate, accodate, in copia ed errori) e anche lo stato di migrazione del database.
La migrazione passa allo stato Succeeded quando lo stato Migrating Data viene completato correttamente. Se si verifica un problema nello stato Migrating Data, la migrazione passa a uno stato Failed.
Quando la migrazione passa allo stato Succeeded, la migrazione dello schema e dei dati dal server singolo verso la destinazione del server flessibile è completa. È possibile aggiornare la pagina per controllare lo stato di avanzamento.
Convalida ed esegui migrazione
In questa opzione, le convalide vengono eseguite prima dell'avvio della migrazione. Quando lo stato secondario PerformingPreRequisiteSteps viene completato, il flusso di lavoro passa allo stato secondario Validation in Progress.
- Se la convalida presenta errori, la migrazione passa a uno stato Failed.
- Se la convalida viene completata senza errori, viene avviata la migrazione e il flusso di lavoro passa allo stato secondario Migrating Data.
È possibile visualizzare i risultati di Convalida ed esegui la migrazione al termine dell'operazione.
Annullare la migrazione tramite il portale
È possibile annullare eventuali convalide o migrazioni in corso. Il flusso di lavoro deve trovarsi nello stato InProgress per essere annullato. Non è possibile annullare una convalida o una migrazione che si trova nello stato Succeeded o Failed.
L'annullamento di una convalida arresta qualsiasi altra attività di convalida e la convalida passa allo stato Canceled.
L'annullamento di una migrazione arresta altre attività di migrazione nel server di destinazione e la migrazione passa allo stato di Canceled. L'azione di annullamento eseguirà il rollback di tutte le modifiche apportate dal servizio di migrazione nel server di destinazione.
Controllare la migrazione al termine dell’operazione
Dopo aver completato la migrazione, assicurarsi di poter accedere al server flessibile usando le stesse credenziali del server singolo. Se si verificano errori di autenticazione nel server flessibile dopo la migrazione da un singolo server, è possibile che la macchina virtuale del server flessibile sia conforme a FIPS o che usi un algoritmo di crittografia password diverso (SCRAM-SHA-256) rispetto alla crittografia MD5 del singolo server. Per mitigare questo errore, seguire questa procedura:
- Modificare il parametro del server password_encryption nel server flessibile da SCRAM-SHA-256 a MD5.
- Reinizializzare la migrazione dal server singolo al server flessibile.
- Se i problemi di autenticazione persistono, eliminare il server flessibile esistente ed eseguirne il provisioning uno nuovo. Ripetere i passaggi 1 e 2 per risolvere il problema.
Questo dovrebbe risolvere gli errori di autenticazione.
Dopo la migrazione, è possibile effettuare le attività seguenti:
Verificare i dati nel server flessibile e assicurarsi che si tratti di una copia esatta dell'istanza di origine.
Dopo la verifica, abilitare l'opzione di disponibilità elevata nel server flessibile in base alle esigenze.
Modificare lo SKU del server flessibile in modo che corrisponda alle esigenze dell'applicazione. Questa modifica richiede un riavvio del server di database.
Se si modificano i parametri del server dai relativi valori predefiniti nell'istanza di origine, copiare questi valori nel server flessibile.
Copiare altre impostazioni del server, ad esempio tag, avvisi e regole del firewall (se applicabile) dall'istanza di origine al server flessibile.
Apportare modifiche all'applicazione per puntare le stringhe di connessione a un server flessibile.
Monitorare attentamente le prestazioni del database per assicurarsi che non sia necessaria l'ottimizzazione delle prestazioni.