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

时间: 2024-10-25 09:29:48

PostgreSQL9.3安装tds_fdw扩展的相关文章

php安装swoole扩展

编译安装 Swoole扩展是按照php标准扩展构建的.使用phpize来生成php编译配置,./configure来做编译配置检测,make进行编译,make install进行安装. 请下载releases版本的swoole,直接从github主干上拉取最新代码可能会编译不过 如果当前用户不是root,可能没有php目录的写权限,安装时需要sudo或者su 如果是在git分支上直接git pull更新代码,重新编译前务必要执行make clean 安装准备 安装swoole前必须保证系统已经安

vscode安装golint扩展失败

环境: win7 64位系统 问题: 安装完vscode,打开.go文件时,vscode会推荐安装go扩展 go安装完成后提示下载依赖工具 go get -u -v github.com/nsf/gocode go get -u -v github.com/rogpeppe/godef go get -u -v github.com/golang/lint/golint go get -u -v github.com/lukehoban/go-outline go get -u -v sourc

wamp环境PHP安装mongodb扩展

pecl的mongodb扩展链接我们很多开发工作都要在windows下进行,但是在windows下给这些脚本程序安装一些插件扩展都比较麻烦,没有办法像linux环境一样一行命令完成,这里我在为PHP安装mongodb扩展的时候遇到了一些问题,特此写一遍wamp安装php扩展的教程. 1.下载mongodb扩展 下载windows环境下php的mongodb扩展. windows下的php的扩展一般都是dll文件,mongodb的php扩展在这里下载: http://pecl.php.net/pa

Ubuntu 14.04下PostgreSQL-9.3安装与配置

最近要在linux下使用PostgreSQL,在网上搜了下资料,整理下PostgreSQL-9.3安装与配置 第一步:安装PostgreSQL sudo apt-get install postgresql-9.3 第二步:配置PostgreSQL默认用户的密码 1 sudo su postgres -c psql postgresql; 2 ALTER USER postgres WITH PASSWORD ' 你的密码'; 3 \q 4 sudo passwd postgres 说明:1进入

【php】安装mysql扩展

因为在PHP中mysql_connect模块已经逐渐被弃用,我在搭建环境时也没有再安装mysql扩展,但是今天在维护一个老项目时,出现报错 错误信息:Fatal error: Uncaught Error: Call to undefined function mysql_connect() 发现如果php和mysql都已经安装完成了,可以使用phpize工具手动编译生成mysql.so扩展来解决 下面是操作步骤: 1.进入php源码的ext/mysql目录 cd /usr/local/src/

安装memcached扩展

php扩展需要到一个专门的网站查找扩展包,这个网站就是http://pecl.php.net/  这是一个php扩展包的网站,可以在这个网站上找到php关于memcached的扩展包,搜索memcached以后,我下载了memcached-2.2.0.tgz,接下来我们正式进入安装memcached扩展的过程(好像已经说了很多废话了--不管了,反正也没人看我的博客) 先下载libmemcached: wget  https://launchpad.net/libmemcached/1.0/1.0

Centos7下安装php-redis扩展及简单使用

前言: 在本篇博客中,我将给大家介绍如何在Centos7上安装PHP-Redis扩展以及一些简单的实用,关于如何在Centos上安装redis的,可以参考我的上一篇博客 Redis在Centos7上的安装部署 想要在php中操作redis,那就必须安装php-redis扩展,就比如MySQL一样,php想要操作mysql数据库的话,就必须安装mysql扩展,只是在php安装中就默认安装了mysql扩展了. 步骤一:下载解压 下载:https://github.com/nicolasff/phpr

PHP性能之语言性能优化:安装VLD扩展——检测性能

使用Linux命令安装 //下载安装包 wget http://pecl.php.net/get/vld-0.14.0.tgz //解压包 tar zxvf vld-0.14.0.tgz //进入编译.安装目录 cd vld-0.14.0/ //扩展PHP的扩展木块 phpize //使用locate找到php-config路径 locate php-config 如果提示没有该命令,则运行如下命令 yum -y install mlocate updatedb //更行数据,即可用 //配置编

Centos7安装php-redis扩展

前言: 在本篇博客中,我将给大家介绍如何在Centos7上安装PHP-redis扩展以及一些简单的实用,关于如何在Centos上安装redis的,可以参考我的上一篇博客 Redis在Centos7上的安装部署 想要在php中操作redis,那就必须安装php-redis扩展,就比如MySQL一样,php想要操作mysql数据库的话,就必须安装mysql扩展,只是在php安装中就默认安装了mysql扩展了. 步骤一:下载解压 下载:https://github.com/nicolasff/phpr