PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 20/08/2012 10:17:58

matat
Membre

changement master / slave et réplication

Bonjour à tous,
Je suis sous windows 7 et dois répliquer 2 serveurs postgres en réseau sur 2 ordi différents ainsi qu'effectuer leur changement d'état master / slave.
J'ai suivi ce tuto http://www.dalibo.org/glmf131_mise_en_p … resl_9.0_2 et j'ai mis en place la réplication asynchrone de 2 serveurs postgres avec succès.
Le cas du fail over marche parfaitement mais je n'arrive pas à mettre en place l'automatisation du switch over:
Pour changer l'esclave en maître et vice versa, j'utilise des script bat sur chacun des ordis qui arrêtent les 2 bases, suppriment le fichier recovery.conf du slave et créent un recovery.conf (crée spécifiquement pour cette nouvelle configuration) pour le master et enfin relancent les 2 serveurs.
Après ces opérations, le nouveau master se lance bien mais le nouveau slave tourne en boucle avec le log suivant que je ne comprend pas :

LOG:  le système de bases de données a été arrêté pendant la restauration à 2012-08-20 07:16:10 GMT
LOG:  entre en mode standby
LOG:  restauration du journal de transactions « 000000010000000000000015 » à partir de l'archive
LOG:  le journal de transactions provient d'un système de bases de données différent
DÉTAIL:  L'identifiant du journal de transactions du système de base de données est 5774943874277882075,
	l'identifiant de pg_control du système de base de données est 5777573214602351162.
LOG:  état de restauration cohérent atteint à 0/15000078
LOG:  enregistrement de longueur nulle à 0/15000078
LOG:  le système de bases de données est prêt pour accepter les connexions en lecture seule
LOG:  restauration du journal de transactions « 000000010000000000000015 » à partir de l'archive
LOG:  le journal de transactions provient d'un système de bases de données différent
DÉTAIL:  L'identifiant du journal de transactions du système de base de données est 5774943874277882075,
	l'identifiant de pg_control du système de base de données est 5777573214602351162.
FATAL:  la restauration est en cours, ne peut pas accepter les connexions de flux WAL
FATAL:  n'a pas pu se connecter au serveur principal : FATAL:  la restauration est en cours, ne peut pas accepter les connexions de flux WAL

Dans la suite du tuto, il faut reconstruire le nouveau slave à partir d'une sauvegarde du base du nouveau maître. Ce message est il du à ça?
comment automatiser cette tâche?

Normalement il devrai ne rester que la modification du ficher .pgpass et un petit ménage dans les fichiers restaurés?

Merci à vous pour votre aide.

Hors ligne

#2 20/08/2012 12:22:07

rjuju
Administrateur

Re : changement master / slave et réplication

Bonjour,

oui il faut reconstruire l'ancien maître avant qu'il puisse se connecter au nouveau maître. Vous pouvez soit le faire avec pg_basebackup, soit avec un pg_start_backup(), copie des fichiers, pg_stop_back().

Hors ligne

Pied de page des forums