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 Re : Réplication » Slony - réplication à la demande » 25/10/2016 16:18:20

sl_status, désolé je ne dois pas être bien réveillé...

#2 Re : Réplication » Slony - réplication à la demande » 25/10/2016 16:11:29

Je ne retrouve pas  cette vue dans la doc. Peux-tu me donner son nom précis stp?

Merci

#4 Re : Réplication » Slony - réplication à la demande » 31/08/2016 15:22:37

Ok, je vais aller voir donc du côté des tables des events. Quand tu parles de vérifier les logs sont vides c'est également au traversd es tables de Slony?

#5 Re : Réplication » Slony - réplication à la demande » 31/08/2016 15:02:59

Merci à tous. Ok j'utiliserai la solution brutale "douce " wink

Cependant ayant connu SQL Remote de Sybase, là cela se faisait tout seul. Ma seule inquiétude est qu'une partie des données ne se retouve pas sur l'esclave si on termine trop tôt le slon. Ce pourquoi je regardais du coûé des options -q et -r mais cela ne fonctionne pas.

#6 Re : Réplication » Slony - réplication à la demande » 31/08/2016 12:24:12

Merci de ta réponse.
Oui, mais c'est un peu brutal et on n'a jamais la certitude que tout ce qui devait être répliqué l'a été. C'est pour cela que ce serait mieux si slony avait la capacité de s'arrêter sur un évènement donné mais apparemment cela ne fonctionne pas.

#7 Réplication » Slony - réplication à la demande » 22/08/2016 14:47:29

laurentD
Réponses : 12

J'ai deux bases de données, l'une "master" qui est la base de données maître et la seconde "slave" qui est la base de données esclaves. Une réplication Slony est mise en place et fonctionne en continu.
Slony a été choisi pour la possibilité de répliquer seulement une partie de la base.
J'aimerai pouvoir lancer la réplication à la demande. En effet, la base master sert de préproduction à une application et le contenu est "tuné" par des utilisateurs qui décident à un moment donné d'envoyer la bonne version des données en production. A ce moment la réplication doit être enclenchée. La base de données "slave" est donc celle de production.

Ceci a déjà été réalisé il y a de nombreuses années avec des bases de données Sybase et la réplication à la demande y existe avec l'outil SQL Remote qui marche à merveille.

Ici nous devons passer en PostgreSQL et la pierre d'achoppement est cette réplication à la demande.

Les deux bases de données PG se trouvent sur le même serveur. Comme dit ci-dessus la réplication dans l'absolu fonctionne. Le souci d'avoir uen réplication à la demande n'est pas de lancer les deux processus slon mais de les arrêter au bon moment...

J'ai vu qu'il y avait des switches à la commande slon comme -q et -r

Extrait de la doc:
-q quit based on SYNC provider quit_sync_provider indicates which provider’s worker thread should be watched
in order to terminate after a certain event. This must be used in conjunction with the -r option below...
This allows you to have a slon stop replicating after a certain point.
-r quit at event number quit_sync_finalsync indicates the event number after which the remote worker thread
for the provider above should terminate. This must be used in conjunction with the -q option above...

J'ai donc considéré de regarder la valeur max de ev_seqno dans sl_event pour le node 1 (master) et de le passer en paramètre "r" de slon sur le slave. Pour le switch q j'ai repris le pid du slon master. Tout se lance, la synchro fonctionne mais le slon slave ne stoppe pas après l'event indiqué... j'ai tenté de mettre autre chose pour la valeur de q mais alors le process slon slave redémarre toutes les 10 secondes.

Quelqu'un a-t-il une expérience avec ces switches?

Existe-t-il une autre solution pour de la réplication à la demande sous PostgreSQL?

Merci à tous à l'avance.

Pied de page des forums

Propulsé par FluxBB