【发布时间】:2012-06-04 16:15:49
【问题描述】:
我将在生产环境中使用 Postgres 数据库,但想使用 MS SQL(任何版本)进行报告。所以,我想在 MS SQL 从 postgres 订阅的地方设置复制。这可能吗?
【问题讨论】:
标签: sql-server postgresql replication
我将在生产环境中使用 Postgres 数据库,但想使用 MS SQL(任何版本)进行报告。所以,我想在 MS SQL 从 postgres 订阅的地方设置复制。这可能吗?
【问题讨论】:
标签: sql-server postgresql replication
Microsoft 已弃用所有异构复制方案,他们现在 recommend 使用 SSIS 和 CDC 构建解决方案。
我们使用 SSIS 将数据从 PostgreSQL 加载到我们的 SQL Server 报告数据库中,它运行良好,但由于(当时)开源提供程序的限制,我们不得不使用商业 OLE DB 提供程序。
实际上复制数据通常是容易的部分;大部分工作来自收集需求、理解数据、转换数据、实现日志记录和错误处理等。SSIS 可以立即为您做一些事情(例如日志记录),但我的一般建议是主要将其用作工作流工具以及用于具有最少转换逻辑的简单数据复制(例如数据类型转换)。如果某些东西在 SSIS 中看起来太难或太笨拙,那么您可以将其放入存储过程或脚本中,然后从 SSIS 中调用它。
【讨论】:
我多年来一直在使用和关注 PostgreSQL,但不知道有这样的解决方案。如果存在,我担心它可能是复杂或脆弱的。我建议通过 cron 定期导出/导入。在导出和导入之间,您需要处理格式的转换步骤。
如果您的报告实际发生在 MS Excel 或 MS Access 中,我建议您考虑通过 ODBC 将它们直接连接到 PostgreSQL。
【讨论】: