Configurar a extensão pglogical
Para configurar a extensão pglogical
em sua instância de banco de dados RDS para PostgreSQL , adicione pglogical
às bibliotecas compartilhadas no grupo de parâmetros de banco de dados personalizado para sua instância de banco de dados RDS para PostgreSQL. Você também precisa definir o valor do parâmetro rds.logical_replication
como 1
, para ativar a decodificação lógica. Finalmente, você cria a extensão no banco de dados. Você pode usar o AWS Management Console ou a AWS CLI para essas tarefas.
Você deve ter permissões como a função rds_superuser
para realizar essas tarefas.
As etapas a seguir pressupõem que sua instância de banco de dados do RDS para PostgreSQL esteja associada a um grupo de parâmetros de banco de dados. Para obter informações sobre como criar um grupo de parâmetros de banco de dados, consulte Grupos de parâmetros para Amazon RDS.
Como configurar a extensão pglogical
Faça login no AWS Management Console e abra o console do Amazon RDS em https://console.aws.amazon.com/rds/
. -
No painel de navegação, selecione sua instância de banco de dados do RDS para PostgreSQL.
-
Abra a guia Configuration (Configuração) para sua Instância de banco de dados do RDS para PostgreSQL. Entre os detalhes da instância, encontre o link Parameter group (Grupo de parâmetros).
-
Clique no link para abrir os parâmetros personalizados associados ao seu Instância de banco de dados do RDS para PostgreSQL.
-
No campo Parameters (Parâmetros), digite
shared_pre
para encontrar o parâmetroshared_preload_libraries
. -
Selecione Edit parameters (Editar parâmetros) para acessar os valores das propriedades.
-
Adicione
pglogical
à lista no campo Values (Valores). Use uma vírgula para separar itens na lista de valores. -
Encontre o parâmetro
rds.logical_replication
e defina-o como1
para ativar a replicação lógica. -
Reinicialize a instância de banco de dados do RDS para PostgreSQL para que suas alterações tenham efeito.
-
Quando a instância estiver disponível, você poderá usar
psql
(ou pgAdmin) para se conectar à instância de banco de dados RDS para PostgreSQL.psql --host=
111122223333
.aws-region
.rds.amazonaws.com --port=5432 --username=postgres
--password --dbname=labdb
-
Para verificar se pglogical foi inicializada, execute o comando a seguir.
SHOW shared_preload_libraries;
shared_preload_libraries -------------------------- rdsutils,pglogical (1 row)
-
Verifique a configuração que permite a decodificação lógica da forma a seguir.
SHOW wal_level;
wal_level ----------- logical (1 row)
-
Crie a extensão da forma a seguir.
CREATE EXTENSION pglogical;
EXTENSION CREATED
-
Escolha Salvar alterações.
Abra o console do Amazon RDS em https://console.aws.amazon.com/rds/
. -
Selecione a instância de banco de dados do RDS para PostgreSQL na lista de bancos de dados para selecioná-la e depois selecione Reboot (Reinicializar) no menu Actions (Ações).
Como configurar a extensão pglogical
Para configurar a pglogical usando a AWS CLI, chame a operação modify-db-parameter-group para modificar determinados parâmetros em seu grupo de parâmetros personalizado, conforme mostrado no procedimento a seguir.
-
Use o comando AWS CLI a seguir para adicionar
pglogical
ao parâmetroshared_preload_libraries
.aws rds modify-db-parameter-group \ --db-parameter-group-name
custom-param-group-name
\ --parameters "ParameterName=shared_preload_libraries,ParameterValue=pglogical,ApplyMethod=pending-reboot" \ --regionaws-region
-
Use o comando AWS CLI a seguir para definir
rds.logical_replication
como1
a fim de ativar o recurso de decodificação lógica para a Instância de banco de dados do RDS para PostgreSQL.aws rds modify-db-parameter-group \ --db-parameter-group-name
custom-param-group-name
\ --parameters "ParameterName=rds.logical_replication,ParameterValue=1,ApplyMethod=pending-reboot" \ --regionaws-region
-
Use o comando AWS CLI a seguir para reinicializar a instância de banco de dados do RDS para PostgreSQL para que a biblioteca da pglogical seja inicializada.
aws rds reboot-db-instance \ --db-instance-identifier
your-instance
\ --regionaws-region
-
Quando a instância estiver disponível, use
psql
para se conectar à instância de banco de dados RDS para PostgreSQL.psql --host=
111122223333
.aws-region
.rds.amazonaws.com --port=5432 --username=postgres
--password --dbname=labdb
-
Crie a extensão da forma a seguir.
CREATE EXTENSION pglogical;
EXTENSION CREATED
-
Reinicie a instância de banco de dados do RDS para PostgreSQL usando o comando AWS CLI a seguir.
aws rds reboot-db-instance \ --db-instance-identifier
your-instance
\ --regionaws-region