2010-03-15 16 views

Répondre

0

Je ne pense pas, la réplication maître-esclave est uniquement possible entre les mêmes bases de données.

Vous pouvez configurer MySQL en utilisant le PostgreSQL-SQL-mode et vous pouvez également faire un dump prêt à importer dans Postgresql en utilisant --compatible dans mysqldump.

3

No.

Vous pouvez construire quelque chose vous en utilisant des déclencheurs et un processus externe pour envoyer des données sur, mais il est assez difficile puisque MySQL a un support assez limité pour les déclencheurs.

Pour votre scénario, il est préférable de faire des vidages périodiques des données. Le meilleur moyen est souvent de migrer le schéma manuellement, puis d'envoyer vos données au format CSV. Le "mysqldump --compatible" ne fonctionne généralement pas assez bien.

+0

Si la migration manuelle du schéma est une option, cela devient fondamentalement la même question que http://stackoverflow.com/questions/5417386/import-mysql-dump-to-postgresql-database. Et bien que "--compatible" soit en effet insuffisant, certaines des solutions qu'ils mentionnent ici, comme l'utilisation du pgloader, valent probablement mieux que l'envoi d'un fichier CSV. – Tomty

1

C'est possible. Sorte de. Peut être.

Une solution supposée compatible avec la migration MySQL -> PostgreSQL est la version open-source de Continuent Tungsten Replicator.

Vous pouvez voir quelques instructions sur la façon d'implémenter cette "réplication hétérogène" here (bien que la méthode qu'ils suggèrent, en utilisant tungsten-installer, soit obsolète et vous feriez mieux d'utiliser tpm comme so).

La chose est, alors qu'il ya plentyofresources indiquant tungstène vraiment pas utiliser à l'appui, il semble officiellement they no longer do. Cela signifie que si vous essayez d'utiliser la version la plus récente de Tungsten Replicator (3. *), vous constaterez rapidement que certains fichiers nécessaires pour Postgres sont manquants. Si, d'autre part, vous essayez de télécharger une version plus ancienne, par exemple 2.2.1, aucune de ces erreurs n'apparaissent, et tous les fichiers semblent être présents, ce qui laisse place à l'optimisme. Personnellement, je dois admettre que je n'ai pas réussi à faire fonctionner le 2.2.1 non plus, mais cela a probablement plus à voir avec mon manque d'expérience avec Tungsten Replicator en général, et pas avec le support de Postgres. De plus, dans mon cas, l'élément en temps réel n'était pas aussi important, donc nous avons juste fini avec un travail cron en cours d'exécution pgloader. Donc, si la réplication en temps réel de MySQL vers Postgres est quelque chose que vous devez avoir, je vous recommande au moins d'essayer Tungsten Replicator avant de commencer à implémenter votre propre solution. Cependant, si le temps réel n'est pas une exigence absolue, il existe probablement des moyens plus simples.

(De plus, vous pouvez jeter un oeil à SymmetricDS qui prétend faire quelque chose de semblable, bien que je ne l'ai pas personnellement regardé en elle.)

0

SymmetricDS ne MySQL support à la réplication Postgres. Il existe une version open source disponible ainsi qu'une version professionnelle qui fournit une interface web.