zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    一百多套开发视频教程的下载地址
    魅族MX3问题集锦
    Entity Framework 5问题集锦
    【PHP Manager for IIS】让IIS支持PHP
    MySQL安装
    phpMyAdmin安装
    犯了一个愚蠢的序列化错误
    最佳策略
    .net非托管资源
    .net内存何时回收?
  • 原文地址:https://www.cnblogs.com/jiaoyiping/p/4436435.html
Copyright © 2011-2022 走看看