babelfishpg_tds

SQL Server TDS线缆协议兼容扩展

概览

扩展包名版本分类许可证语言
babelfish1.0.0SIMApache-2.0C
ID扩展名BinLibLoadCreateTrustReloc模式
9300babelfishpg_common-
9310babelfishpg_tsql-
9320babelfishpg_tds-
9330babelfishpg_money-
相关扩展babelfishpg_tsql tds_fdw babelfishpg_common babelfishpg_money pg_hint_plan uuid-ossp session_variable jdbc_fdw db_migrator

special case: this extension only works on wiltondb kernel fork

版本

类型仓库版本PG 大版本包名依赖
EXTPIGSTY1.0.01817161514babelfishbabelfishpg_tsql
RPMPIGSTY1.0.01817161514babelfish_$vbabelfishpg_$v, antlr4-runtime413
DEBPIGSTY1.0.01817161514babelfishpg-$v-babelfishbabelfishpg-$v, libantlr4-runtime413
OS / PGPG18PG17PG16PG15PG14
el8.x86_64PIGSTY MISSPIGSTY 5.5.0PIGSTY MISSPIGSTY MISSPIGSTY MISS
el8.aarch64PIGSTY MISSPIGSTY 5.5.0PIGSTY MISSPIGSTY MISSPIGSTY MISS
el9.x86_64PIGSTY MISSPIGSTY 5.5.0PIGSTY MISSPIGSTY MISSPIGSTY MISS
el9.aarch64PIGSTY MISSPIGSTY 5.5.0PIGSTY MISSPIGSTY MISSPIGSTY MISS
el10.x86_64PIGSTY MISSPIGSTY 5.5.0PIGSTY MISSPIGSTY MISSPIGSTY MISS
el10.aarch64PIGSTY MISSPIGSTY 5.5.0PIGSTY MISSPIGSTY MISSPIGSTY MISS
d12.x86_64PIGSTY MISSPIGSTY 5.5.0PIGSTY MISSPIGSTY MISSPIGSTY MISS
d12.aarch64PIGSTY MISSPIGSTY 5.5.0PIGSTY MISSPIGSTY MISSPIGSTY MISS
d13.x86_64PIGSTY MISSPIGSTY 5.5.0PIGSTY MISSPIGSTY MISSPIGSTY MISS
d13.aarch64PIGSTY MISSPIGSTY 5.5.0PIGSTY MISSPIGSTY MISSPIGSTY MISS
u22.x86_64PIGSTY MISSPIGSTY 5.5.0PIGSTY MISSPIGSTY MISSPIGSTY MISS
u22.aarch64PIGSTY MISSPIGSTY 5.5.0PIGSTY MISSPIGSTY MISSPIGSTY MISS
u24.x86_64PIGSTY MISSPIGSTY 5.5.0PIGSTY MISSPIGSTY MISSPIGSTY MISS
u24.aarch64PIGSTY MISSPIGSTY 5.5.0PIGSTY MISSPIGSTY MISSPIGSTY MISS

构建

您可以使用 pig build 命令构建 babelfish 扩展的 RPM / DEB 包:

pig build pkg babelfish         # 构建 RPM / DEB 包

安装

您可以直接安装 babelfish 扩展包的预置二进制包,首先确保 PGDGPIGSTY 仓库已经添加并启用:

pig repo add pgsql -u          # 添加仓库并更新缓存

使用 pig 或者是 apt/yum/dnf 安装扩展:

pig install babelfish;          # 当前活跃 PG 版本安装
pig ext install -y babelfish -v 17  # PG 17
dnf install -y babelfish_17       # PG 17
apt install -y babelfishpg-17-babelfish   # PG 17

预加载配置

shared_preload_libraries = 'babelfishpg_tds';

创建扩展

CREATE EXTENSION babelfishpg_tds CASCADE;  -- 依赖: babelfishpg_tsql

用法

安装 go-sqlcmd

curl -LO https://github.com/microsoft/go-sqlcmd/releases/download/v1.4.0/sqlcmd-v1.4.0-linux-amd64.tar.bz2
tar xjvf sqlcmd-v1.4.0-linux-amd64.tar.bz2
sudo mv sqlcmd* /usr/bin/

使用 go-sqlcmd 进行连接测试

$ sqlcmd -S 10.10.10.10,1433 -U dbuser_mssql -P DBUser.MSSQL
1> select @@version
2> go
version
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Babelfish for PostgreSQL with SQL Server Compatibility - 12.0.2000.8
Oct 22 2023 17:48:32
Copyright (c) Amazon Web Services
PostgreSQL 15.4 (EL 1:15.4.wiltondb3.3_2-2.el8) on x86_64-redhat-linux-gnu (Babelfish 3.3.0)

(1 row affected)

通过 Pigsty 暴露的主库/从库服务端口进行访问

sqlcmd -S 10.10.10.11,5433 -U dbuser_mssql -P DBUser.MSSQL

sqlcmd -S 10.10.10.11,5434 -U dbuser_mssql -P DBUser.MSSQL

最后修改 2026-03-08: add extension catalog (baacba6)