Gestion de la synchronisation des emplacements logiques RDS pour Postgre SQL - Amazon Relational Database Service

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Gestion de la synchronisation des emplacements logiques RDS pour Postgre SQL

Depuis la communauté Postgre SQL 17, une nouvelle fonctionnalité permettant de synchroniser automatiquement les emplacements de réplication logique entre les serveurs principaux et les serveurs de secours a été introduite via le paramètre sync_replication_slots ou la fonction associéepg_sync_replication_slots(), qui synchronise manuellement les emplacements lors de l'exécution.

Ces fonctionnalités sont disponibles à partir RDS de Postgre SQL 17. Une configuration typique comporte une instance principale et sa réplique en lecture, ainsi qu'un abonné de réplication logique à l'instance principale.

Assurez-vous que l'abonnement est créé avec l'option failover définie sur true :

CREATE SUBSCRIPTION subname CONNECTION 'host=...' PUBLICATION pubname WITH (failover = true);

Cela crée un emplacement logique sur l'éditeur avec le basculement activé.

postgres=> SELECT slot_name, slot_type, failover FROM pg_catalog.pg_replication_slots; slot_name | slot_type | failover -----------+-----------+---------- subname | logical | t (1 row)

En activant la synchronisation des emplacements, tous les emplacements de réplication logique de basculement sur le serveur principal sont automatiquement créés sur les emplacements de secours physiques et sont synchronisés périodiquement. Assurez-vous que les valeurs suivantes ont été définies par le biais de groupes de paramètres :

  • rds.logical_replicationdoit être 1 pour permettre la réplication logique

  • hot_standby_feedbackdoit être 1 en veille

  • rds.logical_slot_sync_dbnameen veille doit être défini sur un nom de base de données valide

    La valeur par défaut du paramètre estpostgres. Si l'instance de publication logique possède la postgres base de données, il n'est pas nécessaire de modifier le paramètre par défaut.

  • synchronized_standby_slotssur le serveur principal doit être réglé sur le slot de réplication physique du serveur de secours destiné à être synchronisé

  • sync_replication_slotsdoit être 1 pour activer la synchronisation automatique

Avec un emplacement d'abonnement activé pour le basculement et les valeurs de paramètres ci-dessus, lorsqu'une mise en veille est promue, l'abonné peut modifier son abonnement à cette instance nouvellement promue et poursuivre la réplication logique de manière fluide.