Migrazione automatica dei database EC2 ad Amazon Aurora utilizzando AWS Database Migration Service - Amazon Aurora

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

Migrazione automatica dei database EC2 ad Amazon Aurora utilizzando AWS Database Migration Service

È possibile utilizzare la console Aurora per eseguire la migrazione di un database EC2 ad Aurora. Aurora utilizza AWS Database Migration Service (AWS DMS) per eseguire la migrazione del database EC2 di origine. AWS DMS consente di migrare i database relazionali nel cloud AWS. Per ulteriori informazioni su AWS Database Migration Service, consulta Che cos'è AWS Database Migration Service? nella Guida per l'utente di AWS Database Migration Service.

Per iniziare la migrazione, è necessario creare un cluster di database Aurora equivalente in cui migrare i dati. Dopo aver creato il database di destinazione, è possibile importarvi il database EC2. Per i database di origine più piccoli di 1 TiB, questa azione di migrazione riduce il tempo e le risorse necessari per migrare i dati in Aurora .

Panoramica

La console Aurora consente di migrare i database EC2 in database Aurora equivalenti. È necessario creare un database Aurora per abilitare la migrazione dalla console.

È possibile migrare i database EC2 per i seguenti motori di database:

  • MySQL

  • PostgreSQL

Il processo di migrazione prevede i seguenti passaggi:

  • Creare un database equivalente in Aurora. Affinché i database siano equivalenti, devono avere lo stesso motore di database e una versione del motore compatibile. Devono anche trovarsi nello stesso VPC. Per istruzioni sulla creazione del database, consulta Creazione di un cluster database Amazon Aurora .

  • Scegliere il tipo di replica per il database:

    • Migrazione a pieno carico: Aurora copia l’intero database di origine nel database di destinazione, creando nuove tabelle nella destinazione quando necessario.

      Nota

      Questa opzione causa un’interruzione del database Aurora.

    • Migrazione a pieno carico e acquisizione dei dati di modifica (CDC): simile alla migrazione a pieno carico, con questa opzione, Aurora copia l’intero database di origine nel database di destinazione. Tuttavia, dopo la migrazione a pieno carico, Aurora applica le modifiche acquisite nell’origine al database di destinazione. L’acquisizione dei dati di modifica raccoglie le modifiche nei log del database utilizzando l’API nativa del motore di database.

      Nota

      Questa opzione causa un’interruzione del database Aurora.

    • Acquisizione dei dati di modifica (CDC): questa opzione si utilizza per mantenere disponibile il database di destinazione durante la migrazione. Aurora migra le modifiche in corso dal database di origine nel database di destinazione.

  • Aurora crea le risorse di rete necessarie per facilitare la migrazione. Una volta create le risorse necessarie, Aurora notifica all’utente le risorse create e consente di avviare il trasferimento dei dati.

    Il tempo necessario per completare la migrazione dipende dal tipo di replica e dalla dimensione del database di origine.

Prerequisiti

MySQL

Prima di iniziare a utilizzare un database MySQL come database di origine, è necessario che i seguenti prerequisiti siano soddisfatti. Questi prerequisiti si applicano alle origini gestite da AWS.

È necessario disporre di un account per AWS DMS che disponga del ruolo Replication Admin. Il ruolo richiede i seguenti privilegi:

  • REPLICATION CLIENT: questo privilegio è richiesto per le attività di sola CDC. In altre parole, solo le attività di caricamento completo non richiedono questo privilegio.

  • REPLICATION SLAVE: questo privilegio è richiesto per le attività di sola CDC. In altre parole, solo le attività di caricamento completo non richiedono questo privilegio.

L'utente AWS DMS deve disporre anche dei privilegi SELECT per le tabelle di origine designate per la replica.

Se si utilizzano valutazioni di premigrazione specifiche di MySQL, è necessario fornire i seguenti privilegi.

grant select on mysql.user to <dms_user>; grant select on mysql.db to <dms_user>; grant select on mysql.tables_priv to <dms_user>; grant select on mysql.role_edges to <dms_user> #only for MySQL version 8.0.11 and higher

PostgreSQL

Prima di migrare i dati da un database di origine PostgreSQL gestito da AWS, procedi come segue:

  • Ti consigliamo di utilizzare un account utente AWS con le autorizzazioni minime richieste per l'istanza database PostgreSQL come account utente per l'endpoint di origine PostgreSQL per AWS DMS. L'utilizzo di un account master è sconsigliato. L'account deve avere il ruolo rds_superuser e il ruolo rds_replication. Il ruolo rds_replication fornisce le autorizzazioni per gestire gli slot logici e per eseguire lo streaming dei dati utilizzando gli slot logici.

Nota

Alcune transazioni AWS DMS sono inattive per un po' di tempo prima che il motore DMS le utilizzi nuovamente. Il parametro idle_in_transaction_session_timeout in PostgreSQL versione 9.6 e successive consente di mandare in timeout e in errore le transazioni inattive.

Limitazioni

Le seguenti limitazioni si applicano al processo di migrazione automatica:

  • Per iniziare la migrazione del database di origine, lo stato del database di destinazione deve essere Disponibile.

  • Quando si esegue la migrazione da un database di origine MySQL, l’account Aurora deve avere il ruolo di amministratore della replica. È necessario anche avere i privilegi appropriati per il ruolo.

  • L’istanza EC2 e il database di destinazione devono trovarsi nello stesso VPC.

  • Non è possibile migrare il database EC2 ai seguenti database di destinazione quando si utilizza l’azione Migra dati dal database EC2:

    • Aurora global database

    • Aurora Limitless database

    • Aurora Serverless v1

    • Database con versione di MySQL precedente alla 5.7

    • Database con versione di PostgreSQL precedente alla 10.4