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 08/03/2012 17:40:38

Gil34
Membre

Comparaison serveur primaire et réplicat

Bonjour,

J'ai un serveur répliqué (postgres 9.1) et je me demande s'il n'y aurait pas une fonction qui me permette de m'assurer que le réplicat est bien à l'image du primaire. En fait je voudrais etre sur qu'il n'y ait pas des journaux qui n'aient pas été appliqués sur le réplicat .

Merci de vos idéees

A+
G.

Hors ligne

#2 08/03/2012 23:59:17

gleu
Administrateur

Re : Comparaison serveur primaire et réplicat

check_postgres permet de vérifier le lag entre le maître et l'esclave. Il est possible de le faire soi-même en regardant la position courante dans les journaux pour le maître et la position reçu, réécrite et rejouée dans les journaux pour l'esclave.


Guillaume.

Hors ligne

#3 09/03/2012 11:13:00

arthurr
Membre

Re : Comparaison serveur primaire et réplicat

Juste un petit complément :
sur le slave : SELECT pg_last_xlog_receive_location()
sur le master : SELECT pg_current_xlog_location()

Hors ligne

#4 09/03/2012 11:38:48

Gil34
Membre

Re : Comparaison serveur primaire et réplicat

Effectivement check_postgres permet de savoir combien de journaux sont en attente sur l'un ou l'autre des serveurs mais ce que je cherche, si ça existe, ça serait plutot une procédure qui m'assure que les datas du réplicat et du maitre sont totalement en phase. Au cas iu s'il y a eu un pb de place disk à un moment sur un serveur que tous les journaux aient été appliqués.

Dernière modification par Gil34 (09/03/2012 11:39:54)

Hors ligne

#5 09/03/2012 12:23:14

Marc Cousin
Membre

Re : Comparaison serveur primaire et réplicat

Vous voulez quoi exactement ? Un outil qui compare au niveau du contenu des tables les deux bases, pour vous garantir qu'elles sont en phase ?


Marc.

Hors ligne

#6 09/03/2012 12:27:32

gleu
Administrateur

Re : Comparaison serveur primaire et réplicat

À partir du moment où vous n'avez pas de message d'erreur dans les logs de PostgreSQL concernant le rejeu des transactions, c'est que tout va bien.


Guillaume.

Hors ligne

#7 09/03/2012 14:14:06

Gil34
Membre

Re : Comparaison serveur primaire et réplicat

Oui c'est ce que je cherche un outil qui compare au niveau du contenu des tables. ça existe ?

Hors ligne

#8 09/03/2012 14:26:52

Marc Cousin
Membre

Re : Comparaison serveur primaire et réplicat

Il y a pg_comparator. Ça ne veut pas dire que c'est une bonne idée. Comme dit par gleu, la réplication est physique (on applique les journaux de transaction). Donc si vous n'avez pas confiance en ça, vous pouvez jeter PostgreSQL dans son ensemble tout de suite, puisque c'est le même mécanisme qui est à l'œuvre pour vous garantir que l'instance repart suite à un arrêt d'urgence. Superviser que les journaux ne s'empilent pas et sont appliqués suffit.


Marc.

Hors ligne

#9 09/03/2012 19:13:33

gleu
Administrateur

Re : Comparaison serveur primaire et réplicat

De plus, vérifier le contenu des tables du maître et de l'esclave est impossible à faire, sauf à interdire toute modification le temps de la vérification. Une telle vérification est très longue à faire, ce qui rend l'opération impossible en pratique.


Guillaume.

Hors ligne

Pied de page des forums