linux 搭建unixODBC ,并对接 PostgreSQL 9.3.4
环境:suse 11 ,64位的操作系统
unixODBC 版本:2.3.2
PostgreSQL 9.3.4
1 编译安装 unixODBC
下载 unixODBC :http://www.unixodbc.org/download.html
解压编译
tar -zxvf unixODBC-2.3..tar.gz cd unixODBC-2.3. ./configure --prefix=/opt/unixODBC make && make install
安装路径设置在 /opt/unixODBC
2 下载postgresql 的odbc rpm 包
下载地址:http://rpm.pbone.net/index.php3/stat/4/idpl/23893919/dir/opensuse_11.x/com/unixODBC-2.2.12-200.123.1.x86_64.rpm.html
当然,还有很多其他系统版本的postgresql 的odbc 驱动,http://rpm.pbone.net/index.php3/stat/3/srodzaj/1/search/libodbcpsqlS.so.1%28%29%2864bit%29
3 安装下载rpm 包
rpm -ivh unixODBC-2.2.-200.123..x86_64.rpm
如果安装时候说有依赖的rpm 没有安装,可以忽略缺省的rpm ,强行安装此rpm
rpm -ivh --nodeps unixODBC-2.2.-200.123..x86_64.rpm
安装后,驱动应该在 /usr/lib64/unixODBC
你可以自己手工find 一下,检查odbc 的驱动存放在哪里
find /usr/ -iname "*odbc*.so*" | grep psql
我这样的显示的是
/usr/lib64/unixODBC/libodbcpsqlS.so
/usr/lib64/unixODBC/libodbcpsql.so
PostgreSQL 情况
PostgreSQL 版本为9.3.4 ,数据库为 foo ,使用用户为 sdbadmin,服务端口为5432
PostgreSQL里存在两张表,一张是PostgreSQL 自身的表test ;
一张是PostgreSQL 的外部表 chen,对接的是SequoiaDB 的数据源(如何实现PostgreSQL对接SequoiaDB,可以参考:http://www.sequoiadb.com/index.php?p=whitepaper_7)
4 配置unixODBC ,适配PostgreSQL 服务
修改odbcinst.ini文件
vi /opt/unixODBC/etc/odbcinst.ini
odbcinst.ini
[ODBC] Trace = yes TraceFile = /opt/unixODBC/sql.log
UsageCount = [PostgreSQLODBC] Description = PostgreSQL driver for linux Driver = /usr/lib64/unixODBC/libodbcpsql.so
Setup = /usr/lib64/unixODBC/libodbcpsqlS.so
FileUsage = CPReuse = CPTimeout = UsageCount =
配置odbc.ini 文件
vi /opt/unixODBC/etc/odbc.ini
odbc.ini
[Postgres] Driver = PostgreSQLODBC Description = Test on PostgreSQL
Database = foo
Servername = 192.168.1.155 UserName = sdbadmin Port = ReadOnly = No
加载配置文件
/opt/unixODBC/bin/odbcinst -i -d -f /opt/unixODBC/etc/odbcinst.ini
5 启动odbc 进行连接测试
/opt/unixODBC/bin/isql -v Postgres
查询 test 表和 chen表
能成功查询出来数据了
参考博客:
http://www.unixodbc.org/odbcinst.html
http://linux.vbird.org/linux_basic/0520rpm_and_srpm.php
linux 搭建unixODBC ,并对接 PostgreSQL 9.3.4的更多相关文章
- Python之Django环境搭建(MAC+pycharm+Django++postgreSQL)
Python之Django环境搭建(MAC+pycharm+Django++postgreSQL) 转载请注明地址:http://www.cnblogs.com/funnyzpc/p/7828614. ...
- 【Maven】---Linux搭建Nexus3.X私服
Linux搭建Nexus3.X私服 备注:linux版本: ubuntu 同时已经部署好JDK8环境 一.linux安装nexus 1.创建文件夹并进入该目录 cd /usr/local && ...
- 最全Linux搭建SVN服务端教程
文章首推 支付宝接口对接 高德地图调用 验证码登录 QQ邮箱登录 今日主题:Linux搭建SVN服务端 简介 相信程序员对SVN还是不陌生的,虽然现在用Git比较多,但是SVN也是用的,SVN可以做代 ...
- Linux 搭建Nexus
Linux 安装Maven和nexus代理仓库 1 说明 环境:redhat Enterprise Linux Server5.3-x64. 版本:Maven 3.0.5 ,Nexus-2.5. ...
- Linux 搭建SVN 服务器(转)
一. SVN 简介 Subversion(SVN) 是一个开源的版本控制系統, 也就是说 Subversion 管理着随时间改变的数据. 这些数据放置在一个中央资料档案库 (repository) 中 ...
- 原 Linux搭建SVN 服务器2
原 Linux搭建SVN 服务器 发表于1年前(2014-08-05 17:55) 阅读(12257) | 评论(3) 31人收藏此文章, 我要收藏 赞3 摘要 Linux搭建SVN 服务器 目录 ...
- 原 Linux搭建SVN 服务器
原 Linux搭建SVN 服务器 发表于1年前(2014-08-05 17:55) 阅读(12257) | 评论(3) 31人收藏此文章, 我要收藏 赞3 摘要 Linux搭建SVN 服务器 目录 ...
- Linux搭建SVN 服务器
Linux搭建SVN 服务器 1 安装SVN 2 使用客户端连接 2.1 使用windows的客户端 2.2 使用Linux下的命令行 3 ...
- Linux 搭建SVN server
一. SVN 简单介绍 Subversion(SVN) 是一个开源的版本号控制系統, 也就是说 Subversion 管理着随时间改变的数据. 这些数据放置在一个中央资料档案库 (repository ...
随机推荐
- send data to Flume client-sdk flume使用之httpSource
https://flume.apache.org/FlumeDeveloperGuide.html#client-sdk flume使用之httpSource - CSDN博客 https://blo ...
- Building REST services with Spring
https://spring.io/guides/tutorials/bookmarks/
- 在给mysql数据库备份时,报错: mysqldump: Got error: 145: Table '.\shengdaxcom\pre_forum_thread' is marked as c rashed and should be repaired when using LOCK TABLES
在给mysql数据库备份时,报错: mysqldump: Got error: 145: Table '.\shengdaxcom\pre_forum_thread' is marked as cra ...
- Javascript - ERR_CONTENT_LENGTH_MISMATCH
不知道做了什么,有两天没有跑vue项目啦,今天突然出现加载脚本的时候出现 ERR_CONTENT_LENGTH_MISMATCH这个错误, 所以我去搜索了一下 找到如下答案 http://stac ...
- ZOJ - 3950 How Many Nines 【前缀和】
题目链接 http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3950 题意 给出两个日期 求 这个日期 经过 到 另外一个日期 ...
- php不使用递归实现无限极分类
无限极分类常用的是递归,但是比较不好理解,其实可以用数据库path,pid两个字段的设计来实现无限分类的功能 1.数据库设计 通过上图可以看出pid就是该栏目的父id,而path = 父path+pi ...
- Appium——详解Appium server capabilities
appium server capabilities来告诉appium,如何运行自动化测试,因此需要详细了解. 官方文档:http://appium.io/slate/en/master/?rub ...
- centos6.5安装jdk
1.查看Linux环境自带JDK 使用命令:# rpm -qa|grep gcj 显示内容其中包含相应信息# java-x.x.x-gcj-compat-x.x.x.x-xxjpp# java-x.x ...
- 纯属娱乐,对入门Android有一定的帮助
package android.m9; import android.app.Activity; import android.os.Bundle; import android.view.Men ...
- 简单快捷地测试 JPush API
随着 JPush API v3版本的推出,加上之前开放的 Report API,JPush API 逐渐切换为比较好的符合 REST API 的规范,从而也很容易地使用一般的 HTTP/REST 工具 ...