Todos os produtos
Search
Central de documentação

AnalyticDB:Use rds_dbsync to migrate or synchronize data from a PostgreSQL database to an AnalyticDB for PostgreSQL database

Última atualização: Jun 27, 2026

O pgsql2pgsql é uma ferramenta integrada ao pacote de código aberto rds_dbsync. Use-a para migrar ou sincronizar dados entre instâncias do PostgreSQL, PPAS, Greenplum Database e AnalyticDB for PostgreSQL.

Operações compatíveis

O pgsql2pgsql oferece suporte a dois modos:

Modo

Descrição

Versões de source compatíveis

Migração completa de dados

Migra todos os dados das tabelas entre qualquer combinação de PostgreSQL, PPAS, Greenplum Database e AnalyticDB for PostgreSQL

Qualquer versão

Migração completa e incremental de dados

Migra dados continuamente, incluindo alterações capturadas após o carregamento inicial

PostgreSQL ou PPAS 9.4 ou posterior (o destino também deve ser PostgreSQL ou PPAS)

Pré-requisitos

Para migração completa de dados

Antes de configure o pgsql2pgsql, verifique se você tem:

  • Credenciais de proprietário do banco de dados PostgreSQL de source

  • Permissão de gravação na tabela de destino no banco de dados de destino

Para migração completa e incremental de dados

Além dos pré-requisitos da migração completa, verifique se você tem:

  • Permissão para crie slots de replicação no banco de dados de source

  • Replicação lógica ativada na instância PostgreSQL de source (versão 9.4 ou posterior)

Para ative a replicação lógica, defina os seguintes parâmetros no arquivo postgresql.conf da instância de source:

wal_level = logical
max_wal_senders = 6
max_replication_slots = 6

Configure conexões

O pgsql2pgsql lê os detalhes de conexão do arquivo postgresql.conf. Configure as três seções de conexão conforme descrito abaixo:

Banco de dados de source:

[src.pgsql]
connect_string = "host=192.168.1.1 dbname=test port=3432 user=test password=pgsql"

Defina o parâmetro user como o proprietário do banco de dados PostgreSQL de source.

Banco de dados temporário local:

[local.pgsql]
connect_string = "host=192.168.1.2 dbname=test port=3432 user=test2 password=pgsql"

Banco de dados de destino:

[desc.pgsql]
connect_string = "host=192.168.1.3 dbname=test port=3432 user=test3 password=pgsql"

O usuário da conexão de destino deve ter permissão de gravação na tabela de destino.

Execute uma migração completa

Após configure o arquivo postgresql.conf, execute o comando abaixo para iniciar a migração completa:

./pgsql2pgsql

Esse comando migra todos os dados das tabelas de usuário do banco de dados de source para o banco de dados de destino.

Monitorar o status da migração

Conecte-se ao banco de dados temporário local e consulte a tabela db_sync_status para verificar o progresso da migração:

SELECT * FROM db_sync_status;

Essa tabela armazena as seguintes informações:

  • Horários de início e término da migração completa de dados

  • Horário de início da migração incremental de dados

  • Status da sincronização incremental de dados

Baixe o rds_dbsync