程序员的知识教程库

网站首页 > 教程分享 正文

PostgreSQL ODBC安装和使用

henian88 2025-04-27 13:49:54 教程分享 11 ℃ 0 评论

1. 下载psqlodbc源码进行编译:

源码下载地址:
https://www.postgresql.org/ftp/odbc/versions.old/src/

2. 下载好了进行编译:

按照官方说明进行编译,运行如下命令(我下载的包是
psqlodbc-16.00.0000.tar.gz,按需修改以下文件名):

tar zxvf psqlodbc-16.00.0000.tar.gz cd psqlodbc-16.00.0000 ./configure

我的是WSL安装的是Ubuntu22.04,运行./configure的时候报错,说找不到必需的依赖odbc_conf。

根据这个错误,检查是否安装了unixODBC和unixODBC-dev,如果没有安装,按照以下命令安装:

sudo apt install unixodbc unixodbc-dev

确认完安装正确,完成后可能还是报错找不到odbc_conf。

没办法,卸载:

sudo apt autoremove unixodbc uniodbc-dev

完成后现在unixODBC源码进行安装:

下载地址:https://www.unixodbc.org/

首页就可以找到下载目标,然后运行如下命令:

tar zxvf unixODBC-2.3.12.tar.gz cd unixODBC-2.3.12 ./configure make make install

我按默认路径安装:/usr/local/lib

然后回到目录psqlodbc-16.00.0000,继续运行./configure,运行通过,继续make && make install

会把以下四个文件安装到/usr/local/lib:

psqlodbcw.so psqlodbcw.la psqlodbca.so psqlodbca.la

如果不想按默认路径安装,就可以把文件拷贝到自己的安装路径,编译好的文件在psqlodbc-16.00.0000/.lib路径下。

编译过程中可能会遇到其它依赖包,按需安装就可以,比如readline

sudo apt install readline-dev

3. 配置环境变量和odbc配置文件

修改.bashrc,或者按自己的配置文件配置如.bash_profile,或者全局配置文件。

配置LD_LIBRARY_PATH,改成export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH,如果路径已经存在则不需要添加。

export ODBCSYSINI=/home/userx/odbc/etc export ODBCINI=/home/userx/odbc/etc/odbc.ini

文件路径按需修改(ODBCSYSINI路径下存放odbc.ini和odbcinst.ini)

修改odbc.ini,内容如下: [PSQL_database] Description = database desc Driver = PostgreSQL UNICODE Database = database Servername = ipaddress UserName = name Password = password Port = 5432 ConnSettings = SET search_path=schema-name

内容说明如下:

[PSQL_database] 给这段内容取的标题 Description 说明 Driver 驱动名,跟odbcinst.ini里配置的驱动标签一致 Database 数据库名 servername IP地址 username 用户名 password 密码 port 端口 ConnSettings 连接设置SET search_path=schema-name,是设置schema名为schema-name 修改odbcinst.ini,内容如下:# [PostgreSQL UNICODE] Description = PostgreSQL ODBC driver (UNICODE version) Driver =
/usr/local/lib/psqlodbcw.so Setup =
/usr/local/lib/psqlodbcw.so

修改成自己的驱动目录。

验证 执行isql -v PSQL_database来验证是否配置正确,如果能进入到sql命令行,就说明配置正确。 如果不成功,先检查咱们的环境变量是否生效。运行命令source ~/.bashrc来使环境变量生效。

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表