2009-05-15 7 views
1

Je dois répliquer les données de Microsoft SQL Server vers MySQL ou PostgreSQL. Les données incluent des images stockées dans des colonnes BLOB.Options de réplication de la base de données Microsoft SQL Server vers MySQL/PostgreSQL sous Linux

Pourriez-vous commenter vos expériences avec les stratégies suivantes et suggérer d'autres que j'ai peut-être manquant?

  1. script personnalisé écrit en Java en utilisant JDBC
  2. pilote odbc linux avec un script perl
  3. Setup ma propre machine Windows et utiliser SSIS ou DTS w/Postgres pilote ODBC
  4. programme d'écriture .net et l'exécution calendrier sur machine Windows
  5. FreeTDS

Répondre

1

à SQL Server vous cherchez technologies de réplication, vous pouvez utiliser non-SQL Server abonnés altho Alors qu'Oracle et DB2 sont officiellement supportés à ce jour, des solutions personnalisées ont été implémentées avec succès.

http://msdn.microsoft.com/en-us/library/ms151835.aspx

Integration Services SQL Server serait une bonne approche à mon avis. Vous pouvez facilement créer des composants personnalisés pour s'interfacer avec des abonnés non-SQL Server si nécessaire.

1

Python a de bonnes bibliothèques pour les trois bases de données, et SQLAlchemy facilite l'écriture de données DB. J'utilise freetds et unixodbc pour SQL Server. Si vous voulez réellement la même structure de table, SQLAlchemy rend cela particulièrement facile, car vous pouvez définir la structure une fois de manière générique et lui faire créer la structure dans chacune des trois bases de données.

+0

Le pilote FreeTDS ne prend pas en charge les objets BLOB et je ne peux pas créer de tables ou de vues sur la base de données source. Je vais jeter un coup d'oeil à SQLAlchemy. Merci pour le conseil. –

Questions connexes