

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\_name>}} 
+ UTILIZZO SU SCHEMA {{<database\_name>}} 
+ SELEZIONA SU TUTTE LE TABELLE DELLO SCHEMA {{<database\_name>}} 
+ SELEZIONA SU TUTTE LE SEQUENZE DELLO SCHEMA {{<database\_name>}} 

## 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\* . \*
+ PIÙ TARDI \* . \*
+ SCENDI SU \* . \*
+ INDICE SU\* . \*
+ RIFERIMENTI SU\* . \*
+ SELECT ON \*.\*
+ CREA UNA VISTA SU\* . \*
+ SHOW VIEW ON \*.\*
+ GRILLETTO SU \* . \*
+ CREA ROUTINE SU\* . \*
+ MODIFICA LA ROUTINE SU \* . \*
+ ESEGUI SU\* . \*
+ INSERISCI, AGGIORNA SU AWS\_POSTGRESQL \_EXT. \*
+ INSERISCI, AGGIORNA, ELIMINA SU AWS\_POSTGRESQL \_EXT\_DATA. \*
+ CREA TABELLE TEMPORANEE SU AWS\_POSTGRESQL \_EXT\_DATA. \*

È 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\_name}} con il nome del tuo utente. Quindi, {{your\_password}} 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.