Configurar a extensão pglogical - Amazon Aurora

Configurar a extensão pglogical

Para configurar a extensão pglogical em seu cluster de banco de dados Aurora PostgreSQL, adicione pglogical às bibliotecas compartilhadas no grupo de parâmetros de cluster de banco de dados personalizado para seu cluster de banco de dados Aurora 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 seu cluster de banco de dados do Aurora PostgreSQL esteja associado a um grupo de parâmetros de cluster de banco de dados. Para obter informações sobre como criar um grupo de parâmetros de cluster de banco de dados, consulte Grupos de parâmetros para Amazon Aurora.

Como configurar a extensão pglogical
  1. Faça login no AWS Management Console e abra o console do Amazon RDS em https://console.aws.amazon.com/rds/.

  2. No painel de navegação, selecione sua instância do gravador do cluster de banco de dados do Aurora PostgreSQL.

  3. Abra a guia Configuration (Configuração) para sua instância do gravador de cluster de banco de dados do Aurora PostgreSQL. Entre os detalhes da instância, encontre o link Parameter group (Grupo de parâmetros).

  4. Clique no link para abrir os parâmetros personalizados associados ao seu cluster de banco de dados do Aurora PostgreSQL.

  5. No campo Parameters (Parâmetros), digite shared_pre para encontrar o parâmetro shared_preload_libraries.

  6. Selecione Edit parameters (Editar parâmetros) para acessar os valores das propriedades.

  7. Adicione pglogical à lista no campo Values (Valores). Use uma vírgula para separar itens na lista de valores.

    Imagem do parâmetro shared_preload_libraries com pglogical adicionada.
  8. Encontre o parâmetro rds.logical_replication e defina-o como 1 para ativar a replicação lógica.

  9. Reinicialize a instância do gravador do cluster de banco de dados do Aurora PostgreSQL para que suas alterações tenham efeito.

  10. Quando a instância estiver disponível, você poderá usar psql (ou pgAdmin) para se conectar à instância do gravador do cluster de banco de dados Aurora PostgreSQL.

    psql --host=111122223333.aws-region.rds.amazonaws.com --port=5432 --username=postgres --password --dbname=labdb
  11. Para verificar se pglogical foi inicializada, execute o comando a seguir.

    SHOW shared_preload_libraries; shared_preload_libraries -------------------------- rdsutils,pglogical (1 row)
  12. Verifique a configuração que permite a decodificação lógica da forma a seguir.

    SHOW wal_level; wal_level ----------- logical (1 row)
  13. Crie a extensão da forma a seguir.

    CREATE EXTENSION pglogical; EXTENSION CREATED
  14. Escolha Salvar alterações.

  15. Abra o console do Amazon RDS em https://console.aws.amazon.com/rds/.

  16. Selecione a instância do gravador do cluster de banco de dados do Aurora 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.

  1. Use o comando AWS CLI a seguir para adicionar pglogical ao parâmetro shared_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" \ --region aws-region
  2. Use o comando AWS CLI a seguir para definir rds.logical_replication como 1 a fim de ativar o recurso de decodificação lógica para a instância de gravador do cluster de banco de dados do Aurora 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" \ --region aws-region
  3. Use o comando AWS CLI a seguir para reinicializar a instância do gravador de seu cluster de banco de dados Aurora PostgreSQL para que a biblioteca da pglogical seja inicializada.

    aws rds reboot-db-instance \ --db-instance-identifier writer-instance \ --region aws-region
  4. Quando a instância estiver disponível, use psql para se conectar à instância do gravador do cluster de banco de dados Aurora PostgreSQL.

    psql --host=111122223333.aws-region.rds.amazonaws.com --port=5432 --username=postgres --password --dbname=labdb
  5. Crie a extensão da forma a seguir.

    CREATE EXTENSION pglogical; EXTENSION CREATED
  6. Reinicie a instância do gravador de seu cluster de banco de dados do Aurora PostgreSQL usando o comando AWS CLI a seguir.

    aws rds reboot-db-instance \ --db-instance-identifier writer-instance \ --region aws-region