Le 20 janvier 2015 12:32, <jean-yves@lenhof.eu.org> a écrit :
Bonjour,

Pouvez-vous m'orienter sur les solutions de Haute Disponibilité et de PRA disponibles sur les Bases de données suivantes :
- SQL Server
- MySQL
- PostgreSQL

Exemple typique de solution robuste disponible chez l'un des concurrents, Oracle (écarté du fait de son coût et de ses problèmes de licensing sur des environnements virtuels VMWARE), Oracle Dataguard !

On me demande en effet une disponibilité à 99% sur une année et un PRA exécutable en 2h (99% sur une infra VMWARE ne me parait pas si difficle, mais c'est plus ce dernier point de 2h qui me tracasse le plus, deux heures en pleine nuit, cela va très vite entre le réveil, la prise d'appels, le diagnostic et ensuite seulement l'action !).

De plus les fonctionnalités équivalentes à celle de Flashback d'Oracle pourraient aussi être un point intéressant à regarder pour le projet en question...

Cordialement,

JY
Bonjour,

Pour Postgres, il est possible de mettre en place la streaming réplication, asynchrone ou synchrone. Bien entendu la réplication synchrone a un gros impact sur les perfs. En gros tu pars d'une copie du maître puis celui-ci envoie ses journaux dans un flux, le secondaire les rejoue. Il est possible de paramétrer l'esclave pour qu'il puisse effectuer des requêtes de lecture.
Pour la bascule, il y a une commande ou un fichier à créer pour que le secondaire puisse recevoir des requêtes en écriture (http://www.postgresql.org/docs/9.4/static/warm-standby-failover.html). La bascule est immédiate. Pour que les applis contactent le nouveau serveur il faut mettre en place des solutions maisons à base de heartbeat ou corosync/pacemaker. En googlant 2s je suis tombé la dessus (pas testé) : http://clusterlabs.org/wiki/PgSQL_Replicated_Cluster


Dans le développement de Postgres on peut constater qu'il y a eu beaucoup d'efforts portés sur les mécanismes de réplications, la dernière version (9.4) en est la preuve avec la réplication logique : http://pgday.fr/slides/postgresql_9.4.pdf



Pour MySQL/PostgreSQL, j'ai eu de très bon retours de clients sur Percona XtraDB (MySQL) et Pgpool-II (PostgreSQL), mais jamais testé/installé moi même.
Pour pgpool-II je serais plus prudent. Sur le papier c'est assez attrayant mais il a un coté couteau suisse : pooler, réplication, répartiteur de charge. Dans les faits il s'avère que l'outil est assez jeune et que le développement est assez soutenu, pas mal de corrections de bug etc ... Il réintègre le parser de requêtes de Postgres. En bref je trouve que ça fait beaucoup de choses et ça me parait assez lourd. Après je peux me tromper, peut être que dans 2 ans ça sera devenu une référence...

Bien entendu il ne faut pas se lancer à l'aveugle, il faut bien se former et effectuer tous les tests requis et surtout avoir une très bonne supervision. de la réplication. Il y a pas mal de sociétés qui proposent des formations, certaines contribuent au projet comme : Dalibo, 2ndquadrant.
Pour ma part j'ai effectué une formation chez Dalibo et le retour a été très positif.

Cordialement,

--
Adrien Nayrat
https://blog.anayrat.info