

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

# Utilizzo di un database compatibile con MySQL come fonte per migrazioni di dati omogenee in AWS DMS
<a name="dm-data-providers-source-mysql"></a>

È possibile utilizzare un database compatibile con MySQL (MySQL o MariaDB) come origine per [Migrazioni di database omogenee](data-migrations.md) in AWS DMS. In questo caso, il fornitore di dati di origine può essere un database on-premise, Amazon EC2 o RDS per MySQL o MariaDB.

Per eseguire migrazioni di dati omogenee, è necessario usare un utente del database con i privilegi `SELECT` per tutte le tabelle di origine e gli oggetti secondari della replica. Per le attività di acquisizione dei dati di modifica (CDC), questo utente deve disporre anche dei privilegi `REPLICATION CLIENT` (`BINLOG MONITOR` per le versioni di MariaDB successive alla 10.5.2) e `REPLICATION SLAVE`. Per una migrazione dei dati con pieno carico, non sono necessari questi due privilegi.

Usa lo script seguente per creare un utente del database con le autorizzazioni necessarie nel tuo database MySQL. Esegui le `GRANT` query per tutti i database verso cui esegui la migrazione. AWS

```
CREATE USER 'your_user'@'%' IDENTIFIED BY 'your_password';

GRANT REPLICATION SLAVE, REPLICATION CLIENT  ON *.* TO 'your_user'@'%';
GRANT SELECT, RELOAD, LOCK TABLES, SHOW VIEW, EVENT, TRIGGER ON *.* TO 'your_user'@'%';

GRANT BACKUP_ADMIN ON *.* TO 'your_user'@'%';
```

Nell'esempio precedente, sostituisci ciascuno di essi *user input placeholder* con le tue informazioni. Se la versione del database MySQL di origine è inferiore alla 8.0, puoi ignorare il comando `GRANT BACKUP_ADMIN`.

Usa lo script seguente per creare un utente del database con le autorizzazioni necessarie nel tuo database MariaDB. Esegui le query GRANT per tutti i database verso cui esegui la migrazione. AWS

```
CREATE USER 'your_user'@'%' IDENTIFIED BY 'your_password';
GRANT SELECT, RELOAD, LOCK TABLES, REPLICATION SLAVE, BINLOG MONITOR, SHOW VIEW ON  *.* TO 'your_user'@'%';
```

Nell'esempio precedente, sostituisci ognuna *user input placeholder* con le tue informazioni. 

Nelle sezioni seguenti vengono descritti i prerequisiti di configurazione specifici per i database MySQL autogestiti e gestiti da AWS.

**Topics**
+ [Utilizzo di un database compatibile con MySQL autogestito come origine per migrazioni di dati omogenee](#dm-data-providers-source-mysql-sm)
+ [Utilizzo di un database compatibile con MySQL AWS gestito come fonte per migrazioni di dati omogenee in AWS DMS](#dm-data-providers-source-mysql-aws)
+ [Limitazioni all'utilizzo di un database compatibile con MySQL come origine per migrazioni di dati omogenee](#dm-data-providers-source-mysql-limitations)

## Utilizzo di un database compatibile con MySQL autogestito come origine per migrazioni di dati omogenee
<a name="dm-data-providers-source-mysql-sm"></a>

In questa sezione viene descritto come configurare i database compatibili con MySQL ospitati on-premise o su istanze Amazon EC2.

Controlla la versione MySQL o MariaDB del database di origine. Assicurati che AWS DMS supporti la versione del database MySQL o MariaDB di origine come descritto in. [Origini per migrazioni omogenee di dati DMS](CHAP_Introduction.Sources.md#CHAP_Introduction.Sources.HomogeneousDataMigrations)

Per utilizzare CDC, assicurati di abilitare la registrazione binaria. Per abilitare la registrazione binaria, configura i seguenti parametri nel file `my.ini` (Windows) o `my.cnf` (UNIX) del database MySQL o MariaDB.


| Parametro | Valore | 
| --- | --- | 
| `server-id` | Imposta questo parametro su un valore uguale o maggiore di 1. | 
| `log-bin` | Imposta il percorso del file di log binario, ad esempio `log-bin=E:\MySql_Logs\BinLog`. Non includere l'estensione del file. | 
| `binlog_format` | Imposta questo parametro su `ROW`. Si consiglia questa impostazione per la replica perché, in alcuni casi, quando `binlog_format` è impostato su `STATEMENT`, si possono verificare incoerenze della replica dei dati sulla destinazione. Anche il motore di database scrive dati incoerenti simili sulla destinazione quando `binlog_format` è impostato su `MIXED`, perché il motore di database passa automaticamente alla registrazione basata su `STATEMENT`. | 
| `expire_logs_days` | Imposta questo parametro su un valore uguale o maggiore di 1. Per prevenire un utilizzo eccessivo di spazio su disco, si consiglia di non utilizzare il valore predefinito di 0. | 
| `binlog_checksum` | Imposta questo parametro su `NONE`. | 
| `binlog_row_image` | Imposta questo parametro su `FULL`. | 
| `log_slave_updates` | Imposta questo parametro su `TRUE` se stai utilizzando come origine una replica MySQL o MariaDB. | 

## Utilizzo di un database compatibile con MySQL AWS gestito come fonte per migrazioni di dati omogenee in AWS DMS
<a name="dm-data-providers-source-mysql-aws"></a>

In questa sezione viene descritto come configurare le istanze di database Amazon RDS per MySQL e Amazon RDS per MariaDB.

Quando utilizzi un database MySQL o MariaDB AWS gestito come origine per AWS DMS migrazioni di dati omogenee in, assicurati di avere i seguenti prerequisiti per CDC:
+ Per abilitare i log binari per RDS per MySQL e MariaDB, attiva i backup automatici a livello di istanza. Per abilitare i log binari per un cluster Aurora MySQL, modifica la variabile `binlog_format` nel gruppo di parametri. Non è necessario abilitare i backup automatici per un cluster Aurora MySQL.

  Quindi imposta il parametro `binlog_format` su `ROW`.

  Per ulteriori informazioni sull'impostazione dei backup automatici, consulta [Abilitazione dei backup automatici](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithAutomatedBackups.html#USER_WorkingWithAutomatedBackups.Enabling) nella *Guida per l'utente di Amazon RDS*.

  Per ulteriori informazioni sulla configurazione della registrazione binaria per un database Amazon RDS per MySQL o MariaDB, consulta [Configurazione del log binario](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.MySQL.BinaryFormat.html) nella *Guida per l'utente di Amazon RDS*. 

  Per ulteriori informazioni sulla configurazione della registrazione binaria per un cluster MySQL Aurora, consulta [Come posso attivare la registrazione binaria per il cluster Amazon Aurora MySQL edizione compatibile?](https://aws.amazon.com/premiumsupport/knowledge-center/enable-binary-logging-aurora/) 
+ Assicurati che i log binari siano disponibili per. AWS DMS Poiché i database MySQL e MariaDB AWS gestiti eliminano i log binari il prima possibile, è necessario aumentare il periodo di tempo in cui i log rimangono disponibili. Ad esempio, per aumentare il periodo di conservazione dei log binari a 24 ore, esegui il comando seguente. 

  ```
  call mysql.rds_set_configuration('binlog retention hours', 24);
  ```
+ Imposta il parametro `binlog_row_image` su `Full`. 
+ Imposta il parametro `binlog_checksum` su `NONE`.
+ Se stai utilizzando una replica Amazon RDS MySQL o MariaDB come origine, abilita i backup sulla replica di lettura e assicurati che il parametro `log_slave_updates` sia impostato su `TRUE`.

## Limitazioni all'utilizzo di un database compatibile con MySQL come origine per migrazioni di dati omogenee
<a name="dm-data-providers-source-mysql-limitations"></a>

Le seguenti limitazioni si applicano quando si utilizza un database compatibile con MySQL come origine per migrazioni di dati omogenee:
+ Gli oggetti MariaDB come le sequenze non sono supportati in attività di migrazioni omogenee.
+ La migrazione da MariadB ad Amazon MySQL/Aurora RDS MySQL potrebbe non riuscire a causa di differenze tra oggetti incompatibili.
+ Il nome utente che usi per connetterti all'origine dati presenta le seguenti limitazioni:
  + Può contenere da 2 a 64 caratteri.
  + Non può includere spazi.
  + Può includere i seguenti caratteri: a-z, A-Z, 0-9, carattere di sottolineatura (\$1).
  + Deve iniziare con a-z o A-Z.
+ La password che usi per connetterti all'origine dati presenta le seguenti limitazioni:
  + Può contenere da 1 a 128 caratteri.
  + Non può contenere i seguenti caratteri: virgoletta singola ('), virgolette doppie ("), punto e virgola (;) o spazio.
+ AWS DMS migrazioni di dati omogenee creano oggetti MySQL e MariaDB non crittografati sulle istanze Amazon RDS di destinazione anche se gli oggetti di origine erano crittografati. RDS for MySQL non supporta il plugin MySQL keyring\$1aws Keyring necessario per gli oggetti AWS crittografati. Consulta la [documentazione relativa al plugin MySQL Keyring non](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/MySQL.KnownIssuesAndLimitations.html#MySQL.Concepts.Limits.KeyRing) supportato nella Amazon RDS User Guide
+ AWS DMS non utilizza Global Transaction Identifiers (GTIDs) per la replica dei dati anche se i dati di origine li contengono.