PostgreSQL9.3安装tds_fdw扩展

PostgreSQL从9.x开始支持所谓的外表的功能,就是在PostgreSQL中通过安装一些扩展再进行一些配置可以在本地建立一个外表映射到其他不同类型的数据库(可以大致理解为跨越PostgreSQL和其他类型数据库的 dblink)

今天我们介绍一下在PostgreSQL中通过tds_fdw扩展来映射Sqlserver数据库的方法

环境:ubunut14,postgresql9.3,sqlserver2005

fdw本质上是PostgreSQL的扩展,它不能直接和其他的数据库进行通信,所以必须安装能够和其他数据库服务器通信的客户端(例如mysqlClient,oracleClient,freetds等)

 

--安装freetds
apt-get install libsybdb5 freetds-dev freetds-common
--安装PostgreSQL
apt-get install postgresql-9.3 postgresql-client-9.3 postgresql-server-dev-9.3

--下载、上传到服务器,然后编译(可以放在任何一个目录中):
git clone https://github.com/GeoffMontee/tds_fdw.git
cd tds_fdw
make USE_PGXS=1
make USE_PGXS=1 install
--创建插件(在pgAdmin中执行)
CREATE EXTENSION tds_fdw

--创建server(在pgAdmin中执行)
CREATE SERVER server
FOREIGN DATA WRAPPER tds_fdw
OPTIONS (servername '数据库IP',character_set 'UTF-8', port '1433');

--创建映射(在pgAdmin中执行)
CREATE USER MAPPING FOR postgres
SERVER server
OPTIONS (username '数据库用户名', password '数据库密码');

--创建外表

CREATE FOREIGN TABLE EXT_test (
ID2 int NOT NULL ,
Name varchar(255) NOT NULL ,
Code varchar(255) NULL
)

SERVER server
OPTIONS (database '数据库名', query 'select ID2 ,Name,Code from Project');

--查询数据
select * from EXT_test;

--删除外表

drop FOREIGN table EXT_Project

 

PS:

tds_fdw项目的地址:https://github.com/GeoffMontee/tds_fdw

mysql_fdw项目地址:https://github.com/dpage/mysql_fdw

 

转载于:https://www.cnblogs.com/jiaoyiping/p/4436435.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值