

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 di un database Db2 da Amazon a EC2 Aurora compatibile con MySQL utilizzando AWS DMS
<a name="migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms"></a>

*Pinesh Singal, Amazon Web Services*

## Riepilogo
<a name="migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms-summary"></a>

Dopo aver migrato il [database IBM Db2 for LUW](https://www.ibm.com/docs/en/db2/11.5?topic=federation) su Amazon [Elastic Compute Cloud ( EC2Amazon](https://docs.aws.amazon.com/ec2/)), prendi in considerazione la possibilità di riprogettare il database passando a un database nativo per il cloud di Amazon Web Services (AWS). Questo modello riguarda la migrazione di un database IBM [Db2](https://www.ibm.com/docs/en/db2/11.5) for LUW in esecuzione su un' EC2 istanza Amazon verso un database [Edition](https://docs.aws.amazon.com/ec2/) compatibile con [Amazon Aurora MySQL su AWS](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.AuroraMySQL.html).  

Il modello descrive una strategia di migrazione online con tempi di inattività minimi per un database di origine Db2 da più terabyte con un numero elevato di transazioni. 

Questo modello utilizza [AWS Schema Conversion Tool (AWS SCT)](https://docs.aws.amazon.com/SchemaConversionTool/latest/userguide/CHAP_Welcome.html) per convertire lo schema del database Db2 in uno schema compatibile con Aurora MySQL. Quindi il modello utilizza [AWS Database Migration Service (AWS DMS)](https://docs.aws.amazon.com/dms/latest/userguide/Welcome.html) per migrare i dati dal database Db2 al database Aurora compatibile con MySQL. Saranno necessarie conversioni manuali per il codice che non viene convertito da AWS SCT.

## Prerequisiti e limitazioni
<a name="migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms-prereqs"></a>

**Prerequisiti**
+ Un account AWS attivo con un cloud privato virtuale (VPC)
+ AWS SCT
+ AWS DMS

**Versioni del prodotto**
+ Versione più recente di AWS SCT
+ Db2 per Linux versione 11.1.4.4 e successive

## Architecture
<a name="migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms-architecture"></a>

**Stack tecnologico di origine**
+ DB2/Linux x86-64 bit montato su un'istanza EC2  

**Stack tecnologico Target**
+ Un'istanza di database Edition compatibile con Amazon Aurora MySQL

**Architettura di origine e destinazione**

Il diagramma seguente mostra l'architettura di migrazione dei dati tra i database Aurora compatibili con MySQL di origine e Db2 di destinazione. L'architettura sul cloud AWS include un cloud privato virtuale (VPC) (Virtual Private Cloud), una zona di disponibilità, una sottorete pubblica per l'istanza Db2 e l'istanza di replica AWS DMS e una sottorete privata per il database Aurora compatibile con MySQL.

![Architettura di migrazione dei dati tra database compatibili con MySQL di origine e Aurora di destinazione.](https://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/5abfccc4-148c-4794-8d80-e3c122679125/images/f30664f8-2d6a-4448-8d5c-cff3988a52c7.png)


## Tools (Strumenti)
<a name="migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms-tools"></a>

**Servizi AWS**
+ [Amazon Aurora](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html) è un motore di database relazionale completamente gestito creato per il cloud e compatibile con MySQL e PostgreSQL.
+ [AWS Database Migration Service (AWS DMS)](https://docs.aws.amazon.com/dms/latest/userguide/Welcome.html) ti aiuta a migrare gli archivi di dati nel cloud AWS o tra combinazioni di configurazioni cloud e locali.
+ [Amazon Elastic Compute Cloud (Amazon EC2)](https://docs.aws.amazon.com/ec2/) fornisce capacità di calcolo scalabile nel cloud AWS. Puoi avviare tutti i server virtuali di cui hai bisogno e dimensionarli rapidamente.
+ [AWS Schema Conversion Tool (AWS SCT)](https://docs.aws.amazon.com/SchemaConversionTool/latest/userguide/CHAP_Welcome.html) supporta 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. AWS SCT supporta come sorgente IBM Db2 per le versioni LUW 9.1, 9.5, 9.7, 10.1, 10.5, 11.1 e 11.5.

## Best practice
<a name="migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms-best-practices"></a>

Per le best practice, consulta [Best practice for AWS Database Migration Service](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_BestPractices.html).

## Epiche
<a name="migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms-epics"></a>

### Configura il database IBM Db2 di origine
<a name="configure-the-source-ibm-db2-database"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Crea il database IBM Db2 su Amazon. EC2 | Puoi creare un database IBM Db2 su un' EC2 istanza utilizzando un'Amazon Machine Image (AMI) da AWS Marketplace o installando il software Db2 su un'istanza. EC2 <br />Avvia un' EC2 istanza selezionando un AMI per IBM Db2 (ad esempio, [IBM Db2 v11.5.7 RHEL 7.9](https://aws.amazon.com/marketplace/pp/prodview-aclrjj4hq2ols?sr=0-1&ref_=beagle&applicationId=AWS-EC2-Console)), che è simile a un database locale. | DBA, AWS generale | 
| Configura i gruppi di sicurezza. | Configura le regole in entrata del gruppo di sicurezza VPC per SSH (Secure Shell) e TCP con le porte 22 e 50000, rispettivamente. | Informazioni generali su AWS | 
| Crea l'istanza del database. | Crea una nuova istanza (utente) e un database (schema) oppure usa l'`db2inst1`istanza e il database di esempio predefiniti.1. Connettiti all' EC2 istanza utilizzando il terminale per connetterti al database Db2. In alternativa, puoi installare qualsiasi software client DB che si connetterà al database Db2.<br />2. Per impostare la password dell'utente db2inst1, esegui il comando. `sudo passwd db2inst1`<br />3. Per connetterti all'istanza db2inst1, esegui il comando. `sudo su - db2inst1`<br />4. Per connetterti al database Db2, esegui il comando. `db2`<br />5. Per connetterti al database di esempio, usa il comando`connect to sample`. In alternativa, connettiti al database che hai creato.<br />6. Dopo esserti connesso all'istanza del database, crea oggetti e inserisci dati in questi oggetti utilizzando le istruzioni SQL Db2. | DBA | 
| Verifica che l'istanza DB Db2 sia disponibile. | Per confermare che l'istanza del database Db2 è attiva e in esecuzione, usa il `Db2pd -` comando. | DBA | 

### Configurare il database Aurora di destinazione compatibile con MySQL
<a name="configure-the-target-aurora-mysql-compatible-database"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Crea il database Aurora compatibile con MySQL. | Crea un database di compatibilità Amazon Aurora con MySQL dal servizio AWS RDS+ Crea un database su Amazon Aurora con compatibilità MySQL e versione a tua scelta, ad esempio Aurora (MySQL) —5.6.10a<br />+ Installa l'applicazione MySQL Workbench o il tuo software client DB preferito che ti consente di connetterti al database MySQL | DBA, AWS generale | 
| Configura i gruppi di sicurezza. | Configura le regole in entrata del gruppo di sicurezza VPC per le connessioni SSH e TCP. | Informazioni generali su AWS | 
| Verifica che il database Aurora sia disponibile. | Per assicurarti che il database Aurora compatibile con MySQL sia attivo e funzionante, procedi come segue:1. Connect all' EC2 istanza tramite SSH.<br />2. Configura e connettiti all'istanza Aurora compatibile con MySQL da MySQL Workbench. Usa l'endpoint come nome host, come mostrato nell'esempio seguente.<pre> mysql-cluster-instance-1.cokmvis0v46q.us-east-1.rds.amazonaws.com</pre><br />3. Crea e connettiti al nuovo schema (ad esempio,`mysql-sample-db2`).<br />4. Esegui le istruzioni MySQL per controllare gli schemi e gli oggetti nel database. | DBA | 

### Configurazione ed esecuzione di AWS SCT
<a name="configure-and-run-aws-sct"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Installa AWS SCT. | Scarica e installa l'ultima versione di [AWS SCT](https://docs.aws.amazon.com/SchemaConversionTool/latest/userguide/CHAP_Installing.html) (l'ultima versione corrente 1.0.628). | Informazioni generali su AWS | 
| Configura AWS SCT. | 1. Scarica i driver Java Database Connectivity (JDBC) per IBM Db2 (versione 4.22.X) e MySQL (8.x).<br />2. Per configurare i driver in AWS SCT, scegli **Impostazioni, Impostazioni** **globali**, **Driver**. | Informazioni generali su AWS | 
| Crea un progetto AWS SCT. | Crea un progetto e un report AWS SCT che utilizzi Db2 per LUW come motore DB di origine e compatibile con Aurora MySQL per il motore DB di destinazione.<br />Per identificare i privilegi necessari per connettersi a un database Db2 for LUW, consulta [Usare Db2 LUW come sorgente per AWS SCT](https://docs.aws.amazon.com/SchemaConversionTool/latest/userguide/CHAP_Source.DB2LUW.html). | Informazioni generali su AWS | 
| Convalida gli oggetti. | Scegli **Carica schema**, convalida gli oggetti. Aggiorna eventuali oggetti errati sul database di destinazione:1. **Connettiti al server compatibile con Amazon Aurora MySQL fornendo i dettagli della connessione e scegli Test di connessione.**<br />Sia le connessioni di origine che quelle di destinazione devono avere successo prima che AWS SCT possa avviare il report di migrazione.<br />2. Una volta completato il report, inserisci lo schema da convertire e scegli **Fine.**<br />AWS SCT elenca tutti gli oggetti di origine e destinazione che vengono convertiti e presentano errori.<br />3. Rivedi gli errori e cancellali manualmente.<br />4. Dopo aver eliminato tutti gli errori, apri il menu contestuale (fai clic con il pulsante destro del mouse) per lo schema e scegli **Carica schema**.<br />5. Scegli **Applica al database**.<br />6. In MySQL Workbench, connettiti al database Aurora compatibile con MySQL e controlla lo schema e gli oggetti. | DBA, AWS generale | 

### Configurazione ed esecuzione di AWS DMS
<a name="configure-and-run-aws-dms"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Creare un'istanza di replica. | Accedi alla Console di gestione AWS, accedi al servizio AWS DMS e crea un'istanza di replica con impostazioni valide per il gruppo di sicurezza VPC che hai configurato per i database di origine e di destinazione. | Informazioni generali su AWS | 
| Crea endpoint. | Crea l'endpoint di origine per il database Db2 e crea l'endpoint di destinazione per il database Aurora compatibile con MySQL:1. Crea un endpoint per IBM Db2 come origine scegliendo **Seleziona istanza DB RDS e quindi** scegliendo l'istanza Db2 che hai creato. I dettagli di configurazione dell'endpoint verranno compilati automaticamente.<br />2. Nelle impostazioni specifiche dell'endpoint, aggiungi i seguenti attributi di connessione aggiuntivi.<pre>CurrentLSN=<scan>; MaxKBytesPerRead=64; SetDataCaptureChanges=true</pre><br />Se non menzioni questi attributi, la connessione di test dell'endpoint di origine non avrà esito positivo. Per ulteriori informazioni, consulta [Using IBM Db2 LUW come fonte per AWS](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.DB2.html) DMS.<br />3. Crea un endpoint compatibile con Aurora MySQL come destinazione **scegliendo Seleziona istanza DB RDS e quindi scegliendo l'istanza** compatibile con Aurora MySQL che hai creato. I dettagli di configurazione dell'endpoint verranno compilati automaticamente. Per ulteriori informazioni, consulta [Usare un database compatibile con MySQL come destinazione per AWS Database](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.MySQL.html) Migration Service.<br />4. Testa gli endpoint di origine e di destinazione. Verifica che entrambi abbiano esito positivo e siano disponibili<br />5. Se il test fallisce, assicurati che le regole in entrata del gruppo di sicurezza siano valide. | Informazioni generali su AWS | 
| Crea attività di migrazione. | Crea una singola attività di migrazione o più attività di migrazione per il pieno carico e la convalida CDC o dei dati:1. Per creare un'attività di migrazione del database, scegli l'istanza di replica, l'endpoint del database di origine, l'endpoint del database di destinazione. Specificate il tipo di **migrazione come Migrazione dei dati esistenti** (pieno carico), **Replica solo le modifiche ai dati (CDC)** o **Migra i dati esistenti e replica le modifiche in corso (pieno carico e** CDC).<br />2. In **Table mapping**, puoi configurare le regole di selezione e le regole di trasformazione nei formati GUI o JSON.<br />3. In **Regole di selezione**, seleziona lo schema, inserisci il nome della tabella e seleziona Azione (Includi/Escludi) da configurare (ad esempio, Schema: SAMPLE; Nome tabella:%, Azione: Include).<br />4. In **Regole di trasformazione**, seleziona l'obiettivo (schema, tabella o colonna). Seleziona il nome dello schema e scegli l'azione (maiuscole, prefisso, suffisso); ad esempio, Target: Schema`mysql-sample-db`; Azione: Crea lettere minuscole.<br />5. Attiva il monitoraggio di Amazon CloudWatch Logs. | Informazioni generali su AWS | 
| Pianifica il ciclo di produzione. | Conferma i tempi di inattività con le parti interessate, come i proprietari delle applicazioni, per eseguire AWS DMS nei sistemi di produzione. | Responsabile della migrazione | 
| Esegui le attività di migrazione. | 1. Avvia l'attività AWS DMS con stato **Pronto**.<br />2. Monitora i log delle attività di migrazione in Amazon CloudWatch Logs per eventuali errori. | Informazioni generali su AWS | 
| Convalida i dati. | Esamina i risultati e i dati delle attività di migrazione nei database Db2 di origine e MySQL di destinazione:1. Se lo stato è **Carica, completa la replica in corso**, il caricamento completo con la migrazione dei dati CDC è completato e la convalida è in corso.<br />2. Connect al database Aurora compatibile con MySQL e controlla i dati.<br />3. Controlla le modifiche in corso inserendo o aggiornando i dati nel database Db2. | DBA | 
| Interrompi le attività di migrazione. | Una volta completata correttamente la convalida dei dati, interrompi le attività di migrazione di convalida. | Informazioni generali su AWS | 

## risoluzione dei problemi
<a name="migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms-troubleshooting"></a>


| Problema | Soluzione | 
| --- | --- | 
| Le connessioni di test di origine e destinazione di AWS SCT non funzionano. | Configura le versioni dei driver JDBC e le regole in entrata del gruppo di sicurezza VPC per accettare il traffico in entrata. | 
| L'esecuzione del test dell'endpoint sorgente Db2 non riesce. | Configura l'impostazione di connessione aggiuntiva. `CurrentLSN=<scan>;` | 
| L' AWSDMS operazione non riesce a connettersi alla sorgente Db2 e viene restituito il seguente errore.<br />`database is recoverable if either or both of the database configuration parameters LOGARCHMETH1 and LOGARCHMETH2 are set to ON` | Per evitare l'errore, esegui i seguenti comandi:1. `$ db2 update db cfg for sample using LOGARCHMETH1 DISK:/home/db2inst1/logs`<br />2. `$ db2stop`<br />3. `$ db2start`<br />4. `$ db2 connect to sample` <pre>SQL1116N A connection to or activation of database "SAMPLE" cannot be made because of BACKUP PENDING.  SQLSTATE=57019</pre><br />5. `$ db2 backup database sample to ../logs`<pre>SQL2036N The path for the file or device "../logs" is not valid</pre><br />6. `$ cd`<br />7. `$ pwd` <pre> /home/db2inst1</pre><br />8. `$ mkdir /tmp/backup`<br />9. `$ db2 backup database sample to /tmp/backup`<pre>Backup successful. The timestamp for this backup image is : 20190530084921</pre><br />10. `$ db2 connect to sample`<pre>Database Connection Information<br />Database server        = DB2/LINUX 9.7.1<br />SQL authorization ID   = DB2INST1<br />Local database alias   = SAMPLE<br /></pre> | 

## Risorse correlate
<a name="migrate-a-db2-database-from-amazon-ec2-to-aurora-mysql-compatible-by-using-aws-dms-resources"></a>

**Amazon EC2**
+ [Amazon EC2](https://aws.amazon.com/ec2/)
+ [Guide EC2 per gli utenti di Amazon](https://docs.aws.amazon.com/ec2/)

**Database**
+ [Database IBM Db2](https://www.ibm.com/products/db2-database)
+ [Amazon Aurora](https://aws.amazon.com/rds/aurora/)
+ [Lavorare con Amazon Aurora MySQL](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.AuroraMySQL.html)

**AWS SCT**
+ [Conversione dello schema AWS DMS](https://aws.amazon.com/dms/schema-conversion-tool/)
+ [Guida per l'utente di AWS Schema Conversion Tool](https://docs.aws.amazon.com/SchemaConversionTool/latest/userguide/CHAP_Welcome.html)
+ [Utilizzo dell'interfaccia utente AWS SCT](https://docs.aws.amazon.com/SchemaConversionTool/latest/userguide/CHAP_UserInterface.html)
+ [Utilizzo di IBM Db2 LUW come sorgente per AWS SCT](https://docs.aws.amazon.com/SchemaConversionTool/latest/userguide/CHAP_Source.DB2LUW.html)

**AWS DMS**
+ [AWS Database Migration Service](https://aws.amazon.com/dms/)
+ [Guida per l'utente di AWS Database Migration Service](https://docs.aws.amazon.com/dms/latest/userguide/Welcome.html)
+ [Fonti per la migrazione dei dati](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.html)
+ [Obiettivi per la migrazione dei dati](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.html)
+ [AWS Database Migration Service e AWS Schema Conversion Tool ora supportano IBM Db2 LUW come sorgente (post](https://aws.amazon.com/blogs/database/aws-database-migration-service-and-aws-schema-conversion-tool-now-support-ibm-db2-as-a-source/) di blog)
+ [Migrazione di applicazioni che eseguono database relazionali su AWS](https://d1.awsstatic.com/whitepapers/Migration/migrating-applications-to-aws.pdf)