Sommaire

Changement de topologie

Il n’existe pas de mécanisme de bascule automatique intégrée à PostgreSQL. Des outils dédiés existent, mais s’incluent dans des plans de haute disponibilité qui dépassent le cadre de cet ouvrage.

Il existe une commande permettant à une instance « standby » de devenir une instance « primary » : il s’agit de la commande promote de l’outil pg_ctl, qui va simplement stopper la réplication et permettre les transactions en lecture/écriture. À cette occasion, l’instance va changer de ligne de temps (visible dans les noms des journaux de transactions) et il n’est alors plus possible de connecter l’instance promue à son ancienne instance « primary ». La commande est reprise dans le script de contrôle pg_ctlcluster disponible dans les systèmes Debian.

Les autres instances « standby » peuvent être connectées à cette nouvelle instance « primary » en modifiant le paramètre host de la directive primary_conninfo du fichier recovery.conf, et en indiquant la nouvelle ligne de temps à suivre, avec la directive recovery_target_timeline, ou plus simplement en indiquant latest comme valeur.