PG通过tds_fdw访问SQL Server数据库

0    222    2

Tags:

👉 本文共约2113个字,系统预计阅读时间或需8分钟。

简介

GitHub:https://github.com/tds-fdw/tds_fdw

相关文档:

https://github.com/tds-fdw/tds_fdw/blob/master/ForeignTableCreation.md

https://github.com/tds-fdw/tds_fdw/blob/master/ForeignServerCreation.md

https://github.com/tds-fdw/tds_fdw/blob/master/UserMappingCreation.md

https://github.com/tds-fdw/tds_fdw/blob/master/ForeignSchemaImporting.md

https://github.com/tds-fdw/tds_fdw/blob/master/Variables.md

A PostgreSQL foreign data wrapper to connect to TDS databases (Sybase and Microsoft SQL Server)

tds_fdw 是 PostgreSQL 的一个外部数据包装器(Foreign Data Wrapper, FDW),它允许 PostgreSQL 通过 ODBC(Open Database Connectivity)访问外部的 Microsoft SQL Server 数据库。使用 tds_fdw,可以将 SQL Server 数据库中的表和视图映射为 PostgreSQL 中的外部表,从而使 PostgreSQL 可以像访问本地表一样查询 SQL Server 数据。

主要功能和特点

  1. 跨平台兼容性tds_fdw 通过 FreeTDS 和 ODBC 驱动程序实现,与各种 SQL Server 版本兼容,包括 SQL Server 2000 及更高版本。

  2. 透明查询:使用 tds_fdw 后,SQL Server 的表可以像 PostgreSQL 的本地表一样使用,用户可以在 PostgreSQL 中执行 SELECT、INSERT、UPDATE 和 DELETE 等 SQL 操作。

  3. 灵活配置:用户可以通过创建外部服务器(Foreign Server)、外部表(Foreign Table)和用户映射(User Mapping)等方式,灵活配置如何连接和访问外部 SQL Server 数据。

  4. 支持复杂查询tds_fdw 支持 PostgreSQL 的复杂查询功能,包括连接查询、子查询、排序和聚合等。

典型用例

  • 数据迁移:将 SQL Server 的数据迁移到 PostgreSQL 数据库中,tds_fdw 提供了一种方便的方式来逐步迁移或同步数据。
  • 混合查询:在一个查询中同时访问 PostgreSQL 和 SQL Server 中的数据,实现跨数据库的联邦查询。
  • 数据整合:将来自不同数据源的数据整合在一起,便于数据分析和报告。

安装与配置

  1. 安装 FreeTDS

    首先需要安装 FreeTDS,这是一个开源的库,支持通过 TDS(Tabular Data Stream)协议访问 SQL Server。

  2. 安装 tds_fdw

    可以使用 PostgreSQL 扩展机制安装 tds_fdw,通常通过 CREATE EXTENSION tds_fdw; 命令来启用。

    日志:

  3. 配置连接

    还是四部曲:extension -> server -> user mapping -> foreign table

标签:

Avatar photo

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复