

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 da PostgreSQL su Amazon RDS per PostgreSQL utilizzando EC2 pglogical
<a name="migrate-from-postgresql-on-amazon-ec2-to-amazon-rds-for-postgresql-using-pglogical"></a>

*Rajesh Madiwale, Amazon Web Services*

## Riepilogo
<a name="migrate-from-postgresql-on-amazon-ec2-to-amazon-rds-for-postgresql-using-pglogical-summary"></a>

**Questo modello descrive i passaggi per la migrazione di un database PostgreSQL (versione 9.5 e successive) da Amazon Elastic Compute Cloud (Amazon) ad Amazon Relational Database EC2 Service (Amazon RDS) per PostgreSQL utilizzando l'estensione pglogica PostgreSQL.** Amazon RDS ora supporta l'estensione pglogical per PostgreSQL versione 10.

## Prerequisiti e limitazioni
<a name="migrate-from-postgresql-on-amazon-ec2-to-amazon-rds-for-postgresql-using-pglogical-prereqs"></a>

**Prerequisiti**
+ Scegli il tipo giusto di istanza Amazon RDS. Per ulteriori informazioni, consulta la sezione [Tipi di istanze Amazon RDS](https://aws.amazon.com/rds/instance-types/). 
+ Assicurati che le versioni di origine e di destinazione di PostgreSQL siano le stesse.   
+ Installa e integra l'estensione [**pglogical** con PostgreSQL](https://github.com/2ndQuadrant/pglogical) su Amazon. EC2 

**Versioni del prodotto**
+ PostgreSQL versione 10 e successive su Amazon RDS, con le funzionalità supportate su Amazon RDS (vedi [PostgreSQL](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_PostgreSQL.html#PostgreSQL.Concepts) su Amazon RDS nella documentazione AWS). Questo modello è stato testato migrando PostgreSQL 9.5 alla versione 10 di PostgreSQL su Amazon RDS, ma si applica anche alle versioni successive di PostgreSQL su Amazon RDS. 

## Architecture
<a name="migrate-from-postgresql-on-amazon-ec2-to-amazon-rds-for-postgresql-using-pglogical-architecture"></a>

**Architettura di migrazione dei dati**

![\[Architettura di migrazione dei dati per PostgreSQL su Amazon RDS\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/29af3931-48de-499f-9c4b-e10a98e4bba5/images/5f5b906f-dc1a-49a5-ae3f-3e10ae854784.png)


## Tools (Strumenti)
<a name="migrate-from-postgresql-on-amazon-ec2-to-amazon-rds-for-postgresql-using-pglogical-tools"></a>
+ [https://github.com/2ndQuadrant/pglogical](https://github.com/2ndQuadrant/pglogical) pglogica
+ [https://www.postgresql.org/docs/9.5/app-pgdump.html](https://www.postgresql.org/docs/9.5/app-pgdump.html)

## Epiche
<a name="migrate-from-postgresql-on-amazon-ec2-to-amazon-rds-for-postgresql-using-pglogical-epics"></a>

### Migra i dati utilizzando l'estensione pglogical
<a name="migrate-data-by-using-the-pglogical-extension"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Crea un'istanza database Amazon RDS PostgreSQL. | Configura un'istanza DB PostgreSQL in Amazon RDS. Per istruzioni, consulta la documentazione di [Amazon RDS for PostgreSQL](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_GettingStarted.CreatingConnecting.PostgreSQL.html). | DBA | 
| Ottieni un dump dello schema dal database PostgreSQL di origine e ripristinalo nel database PostgreSQL di destinazione. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/migrate-from-postgresql-on-amazon-ec2-to-amazon-rds-for-postgresql-using-pglogical.html) | DBA | 
| Attiva la decodifica logica. | Nel gruppo di parametri Amazon RDS DB, imposta il parametro `rds.logical_replication` statico su 1. Per istruzioni, consulta la [documentazione di Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_PostgreSQL.html#PostgreSQL.Concepts.General.FeatureSupport.LogicalDecoding). | DBA | 
| Crea l'estensione pglogical sui database di origine e di destinazione. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/migrate-from-postgresql-on-amazon-ec2-to-amazon-rds-for-postgresql-using-pglogical.html) | DBA | 
| Crea un editore sul database PostgreSQL di origine. | Per creare un editore, esegui:<pre>psql -d dbname -p 5432 <<EOF<br />SELECT pglogical.create_node( node_name := 'provider1', dsn := 'host=<ec2-endpoint> port=5432 dbname=source-dbname user=source-dbuser' );<br />EOF</pre> | DBA | 
| Crea un set di replica, aggiungi tabelle e sequenze. | Per creare un set di replica sul database PostgreSQL di origine e aggiungere tabelle e sequenze al set di replica, esegui:<pre>psql -d dbname -p 5432 <<EOF<br />SELECT pglogical.replication_set_add_all_tables('default', '{public}'::text[],synchronize_data := true);<br />EOF</pre> | DBA | 
| Crea un abbonato. | Per creare un sottoscrittore sul database PostgreSQL di destinazione, esegui:<pre>psql -h <rds-endpoint> -d target-dbname -U target-dbuser  <<EOF<br />SELECT pglogical.create_node(<br />    node_name := 'subscriber1',<br />    dsn := 'host=<rds-endpoint> port=5432 dbname=target-dbname password=postgres user=target-dbuser'<br />);<br />EOF</pre> | DBA | 
| Crea un abbonamento. | Per creare un abbonamento sul database PostgreSQL di destinazione, esegui:<pre>psql -h <rds-endpoint> -d target -U postgres  <<EOF<br />SELECT pglogical.create_subscription(<br /> subscription_name := 'subscription1',<br /> replication_sets := array['default'],<br />    provider_dsn := 'host=<ec2-endpoint> port=5432 dbname=<source-dbname> password=<password> user=source-dbuser'<br />);</pre> | DBA | 

### Convalida i tuoi dati
<a name="validate-your-data"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Controlla i database di origine e di destinazione. | Controlla i database di origine e di destinazione per confermare che i dati vengano replicati correttamente. È possibile eseguire la convalida di base utilizzando le `select count(1)` tabelle di origine e destinazione. | DBA | 

## Risorse correlate
<a name="migrate-from-postgresql-on-amazon-ec2-to-amazon-rds-for-postgresql-using-pglogical-resources"></a>
+ [Amazon RDS](https://aws.amazon.com/rds/)
+ [Replica logica per PostgreSQL su Amazon RDS (documentazione Amazon](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_PostgreSQL.html#PostgreSQL.Concepts.General.FeatureSupport.LogicalReplication) RDS)
+ [GitHub pglogical](https://github.com/2ndQuadrant/pglogical) (repository)
+ [Limitazioni di pglogical](https://github.com/2ndQuadrant/pglogical#limitations-and-restrictions) (file README del repository) GitHub 
+ [Migrazione di PostgreSQL da locale o Amazon ad EC2 Amazon RDS](https://aws.amazon.com/blogs/database/migrating-postgresql-from-on-premises-or-amazon-ec2-to-amazon-rds-using-logical-replication/) utilizzando la replica logica (blog AWS Database)