

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

# Connessione ai database PostgreSQL con AWS Schema Conversion Tool
<a name="CHAP_Source.PostgreSQL"></a>

È possibile utilizzare AWS SCT per convertire schemi, oggetti di codice del database e codice dell'applicazione da PostgreSQL ai seguenti obiettivi: 
+ Amazon RDS per MySQL
+ Amazon Aurora edizione compatibile con MySQL
+ Amazon RDS per PostgreSQL
+ Amazon Aurora PostgreSQL-Compatible Edition

Per ulteriori informazioni, consulta le sezioni seguenti:

**Topics**
+ [Privilegi per PostgreSQL come database sorgente](#CHAP_Source.PostgreSQL.Permissions)
+ [Connessione a PostgreSQL come sorgente](#CHAP_Source.PostgreSQL.Connecting)
+ [Privilegi per MySQL come database di destinazione](#CHAP_Source.PostgreSQL.ConfigureMySQL)

## Privilegi per PostgreSQL come database sorgente
<a name="CHAP_Source.PostgreSQL.Permissions"></a>

I privilegi richiesti per PostgreSQL come sorgente sono i seguenti: 
+ CONNETTITI AL DATABASE *<database\$1name>* 
+ UTILIZZO SU SCHEMA *<database\$1name>* 
+ SELEZIONA SU TUTTE LE TABELLE DELLO SCHEMA *<database\$1name>* 
+ SELEZIONA SU TUTTE LE SEQUENZE DELLO SCHEMA *<database\$1name>* 

## Connessione a PostgreSQL come sorgente
<a name="CHAP_Source.PostgreSQL.Connecting"></a>

Utilizza la seguente procedura per connetterti al database di origine PostgreSQL con AWS Schema Conversion Tool. 

**Per connetterti a un database di origine PostgreSQL**

1. **Nella AWS Schema Conversion Tool, scegli Aggiungi fonte.** 

1. **Scegli **PostgreSQL**, quindi scegli Avanti.**

   Viene visualizzata la finestra di dialogo **Aggiungi sorgente**.

1. Per **Nome della connessione**, inserisci un nome per il tuo database. AWS SCT visualizza questo nome nell'albero nel pannello di sinistra. 

1. Usa le credenziali del database da Gestione dei segreti AWS o inseriscile manualmente:
   + Per utilizzare le credenziali del database di Secrets Manager, utilizzare le seguenti istruzioni:

     1. Per **AWS Secret**, scegli il nome del segreto.

     1. Scegli **Popola** per inserire automaticamente tutti i valori nella finestra di dialogo di connessione al database di Secrets Manager.

     Per informazioni sull'utilizzo delle credenziali del database da Secrets Manager, vedere[Configurazione in Gestione dei segreti AWS AWS Schema Conversion Tool](CHAP_UserInterface.SecretsManager.md).
   + Per inserire manualmente le informazioni di connessione al database di origine PostgreSQL, usa le seguenti istruzioni:  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/SchemaConversionTool/latest/userguide/CHAP_Source.PostgreSQL.html)

1. Scegli **Test Connection** per verificare che sia in AWS SCT grado di connettersi al database di origine. 

1. Scegli **Connect** per connetterti al tuo database di origine.

## Privilegi per MySQL come database di destinazione
<a name="CHAP_Source.PostgreSQL.ConfigureMySQL"></a>

I privilegi richiesti per MySQL come destinazione durante la migrazione da PostgreSQL sono i seguenti:
+ CREA SU\$1 . \$1
+ PIÙ TARDI \$1 . \$1
+ SCENDI SU \$1 . \$1
+ INDICE SU\$1 . \$1
+ RIFERIMENTI SU\$1 . \$1
+ SELECT ON \$1.\$1
+ CREA UNA VISTA SU\$1 . \$1
+ SHOW VIEW ON \$1.\$1
+ GRILLETTO SU \$1 . \$1
+ CREA ROUTINE SU\$1 . \$1
+ MODIFICA LA ROUTINE SU \$1 . \$1
+ ESEGUI SU\$1 . \$1
+ INSERISCI, AGGIORNA SU AWS\$1POSTGRESQL \$1EXT. \$1
+ INSERISCI, AGGIORNA, ELIMINA SU AWS\$1POSTGRESQL \$1EXT\$1DATA. \$1
+ CREA TABELLE TEMPORANEE SU AWS\$1POSTGRESQL \$1EXT\$1DATA. \$1

È possibile utilizzare il seguente esempio di codice per creare un utente del database e assegnare i privilegi.

```
CREATE USER 'user_name' IDENTIFIED BY 'your_password';
GRANT CREATE ON *.* TO 'user_name';
GRANT ALTER ON *.* TO 'user_name';
GRANT DROP ON *.* TO 'user_name';
GRANT INDEX ON *.* TO 'user_name';
GRANT REFERENCES ON *.* TO 'user_name';
GRANT SELECT ON *.* TO 'user_name';
GRANT CREATE VIEW ON *.* TO 'user_name';
GRANT SHOW VIEW ON *.* TO 'user_name';
GRANT TRIGGER ON *.* TO 'user_name';
GRANT CREATE ROUTINE ON *.* TO 'user_name';
GRANT ALTER ROUTINE ON *.* TO 'user_name';
GRANT EXECUTE ON *.* TO 'user_name';
GRANT INSERT, UPDATE ON AWS_POSTGRESQL_EXT.* TO 'user_name';
GRANT INSERT, UPDATE, DELETE ON AWS_POSTGRESQL_EXT_DATA.* TO 'user_name';
GRANT CREATE TEMPORARY TABLES ON AWS_POSTGRESQL_EXT_DATA.* TO 'user_name';
```

Nell'esempio precedente, sostituiscilo *user\$1name* con il nome del tuo utente. Quindi, *your\$1password* sostituiscilo con una password sicura.

Per utilizzare Amazon RDS per MySQL o Aurora MySQL come destinazione, imposta il parametro `lower_case_table_names` su `1`. Questo valore indica che il server MySQL gestisce gli identificatori di nomi di oggetti come tabelle, indici, trigger e database senza distinzione tra maiuscole e minuscole. Se hai attivato la registrazione binaria nell'istanza di destinazione, imposta il parametro `log_bin_trust_function_creators` su `1`. In questo caso, non è necessario utilizzare le caratteristiche `DETERMINISTIC`, `READS SQL DATA` o `NO SQL` per creare funzioni archiviate. Per configurare questi parametri, crea un nuovo gruppo di parametri di database o modifica un gruppo di parametri di database esistente.