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=...' PUBLICATIONpubname
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_replication
doit être1
pour permettre la réplication logique -
hot_standby_feedback
doit être1
en veille -
rds.logical_slot_sync_dbname
en veille doit être défini sur un nom de base de données valideLa valeur par défaut du paramètre est
postgres
. Si l'instance de publication logique possède lapostgres
base de données, il n'est pas nécessaire de modifier le paramètre par défaut. -
synchronized_standby_slots
sur le serveur principal doit être réglé sur le slot de réplication physique du serveur de secours destiné à être synchronisé -
sync_replication_slots
doit être1
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.