Postgresql学习02-配置ODBC数据源

一、测试环境

名称描述
操作系统版本Kylin-V10
pg数据库版本PostgreSQL 13.3
CPU版本Intel® Core™ i7-7700HQ CPU @ 2.80GHz
psqlodbc版本13.02.0000
unixodbc版本2.3.4

二、安装包下载地址

(1)psqlodbc、unixodbc百度云下载地址

链接:https://pan.baidu.com/s/1-EXoHUSdH05FV2R8uZ4IUw 
提取码:34z0 

(2)psqlodbc官网下载地址

三、安装unixodbc、psqlodbc

前提是需要先安装好postgresql数据库,可以参考之前的链接
《postgresql-14.2-源码编译安装和配置开机自启》

(1)编译unixodbc

./configure --prefix=/usr/local/unixODBC-2.3.4 --includedir=/usr/include --libdir=/usr/lib -bindir=/usr/bin --sysconfdir=/etc

make

make install

(2)查看unixodbc是否安装成功

[root@localhost psqlodbc-13.02.0000]# odbcinst -j
unixODBC 2.3.4
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /root/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8
[root@localhost psqlodbc-13.02.0000]#

(3)编译psqlodbc

./configure --with-libpq=/opt/czg/txdb5.0(你的数据库安装路径)

make

make install

(4)参数介绍:

[root@localhost psqlodbc-13.02.0000]# ./configure --help
`configure' configures psqlodbc 13.02.0000 to adapt to many kinds of systems.

Usage: ./configure [OPTION]... [VAR=VALUE]...

To assign environment variables (e.g., CC, CFLAGS...), specify them as
VAR=VALUE.  See below for descriptions of some of the useful variables.

Defaults for the options are specified in brackets.

Configuration:
  -h, --help              display this help and exit
      --help=short        display options specific to this package
      --help=recursive    display the short help of all the included packages
  -V, --version           display version information and exit
  -q, --quiet, --silent   do not print `checking ...' messages
      --cache-file=FILE   cache test results in FILE [disabled]
  -C, --config-cache      alias for `--cache-file=config.cache'
  -n, --no-create         do not create output files
      --srcdir=DIR        find the sources in DIR [configure dir or `..']

Installation directories:
  --prefix=PREFIX         install architecture-independent files in PREFIX
                          [/usr/local]
  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
                          [PREFIX]

By default, `make install' will install all the files in
`/usr/local/bin', `/usr/local/lib' etc.  You can specify
an installation prefix other than `/usr/local' using `--prefix',
for instance `--prefix=$HOME'.

For better control, use the options below.

Fine tuning of the installation directories:
  --bindir=DIR            user executables [EPREFIX/bin]
  --sbindir=DIR           system admin executables [EPREFIX/sbin]
  --libexecdir=DIR        program executables [EPREFIX/libexec]
  --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]
  --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
  --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
  --libdir=DIR            object code libraries [EPREFIX/lib]
  --includedir=DIR        C header files [PREFIX/include]
  --oldincludedir=DIR     C header files for non-gcc [/usr/include]
  --datarootdir=DIR       read-only arch.-independent data root [PREFIX/share]
  --datadir=DIR           read-only architecture-independent data [DATAROOTDIR]
  --infodir=DIR           info documentation [DATAROOTDIR/info]
  --localedir=DIR         locale-dependent data [DATAROOTDIR/locale]
  --mandir=DIR            man documentation [DATAROOTDIR/man]
  --docdir=DIR            documentation root [DATAROOTDIR/doc/psqlodbc]
  --htmldir=DIR           html documentation [DOCDIR]
  --dvidir=DIR            dvi documentation [DOCDIR]
  --pdfdir=DIR            pdf documentation [DOCDIR]
  --psdir=DIR             ps documentation [DOCDIR]

Program names:
  --program-prefix=PREFIX            prepend PREFIX to installed program names
  --program-suffix=SUFFIX            append SUFFIX to installed program names
  --program-transform-name=PROGRAM   run sed PROGRAM on installed program names

System types:
  --build=BUILD     configure for building on BUILD [guessed]
  --host=HOST       cross-compile to build programs to run on HOST [BUILD]

Optional Features:
  --disable-option-checking  ignore unrecognized --enable/--with options
  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
  --enable-silent-rules   less verbose build output (undo: "make V=1")
  --disable-silent-rules  verbose build output (undo: "make V=0")
  --enable-maintainer-mode
                          enable make rules and dependencies not useful (and
                          sometimes confusing) to the casual installer
  --enable-dependency-tracking
                          do not reject slow dependency extractors
  --disable-dependency-tracking
                          speeds up one-time build
  --disable-pthreads      do not build with POSIX threads
  --enable-static[=PKGS]  build static libraries [default=no]
  --enable-shared[=PKGS]  build shared libraries [default=yes]
  --enable-fast-install[=PKGS]
                          optimize for fast installation [default=yes]
  --disable-libtool-lock  avoid locking (might break parallel builds)

Optional Packages:
  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
  --with-unixodbc[=DIR]	  [default=yes] DIR is the unixODBC base install
			  directory or the path to odbc_config
  --with-iodbc[=DIR]	  [default=no] DIR is the iODBC base install
			  directory or the path to iodbc-config
  --with-libpq[=DIR]	  DIR is the PostgreSQL base install
			  directory or the path to pg_config
  --with-pic[=PKGS]       try to use only PIC/non-PIC objects [default=use
                          both]
  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
  --with-sysroot=DIR Search for dependent libraries within DIR
                        (or the compiler's sysroot if not specified).

Some influential environment variables:
  CC          C compiler command
  CFLAGS      C compiler flags
  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
              nonstandard directory <lib dir>
  LIBS        libraries to pass to the linker, e.g. -l<library>
  CPPFLAGS    (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
              you have headers in a nonstandard directory <include dir>
  CPP         C preprocessor

Use these variables to override the choices made by `configure' or to help
it to find libraries and programs with nonstandard names/locations.

Report bugs to <pgsql-odbc@postgresql.org>.

(5)编辑/etc/odbcinst.ini

[root@localhost psqlodbc-13.02.0000]# more /etc/odbcinst.ini 
# Example driver definitions

# Driver from the postgresql-odbc package
# Setup from the unixODBC package
[PostgreSQL]
Description	= ODBC for PostgreSQL
Driver		= /usr/local/lib/psqlodbcw.so
Setup		= /usr/lib64/libodbcpsqlS.so
Driver64	= /usr/local/lib/psqlodbcw.so
Setup64		= /usr/lib64/libodbcpsqlS.so
FileUsage	= 1

(6)编辑/etc/odbc.ini

[root@localhost psqlodbc-13.02.0000]# more /etc/odbc.ini 
[pg]                     
Description = PostgresSQLODBC            
Driver = PostgreSQL                
Database = postgres                
Servername = localhost            
UserName = txadmin                
Password = 123456789                
Port = 6868                    
ReadOnly = 0                    
ConnSettings = set client_encoding to UTF8

(7)验证odbc数据源是否配置成功

[root@localhost unixODBC-2.3.4]# isql pg
+---------------------------------------+
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
+---------------------------------------+
SQL> select version();
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| version                                                                                                                                                                                                                                                                                                     |
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| PostgreSQL 13.3 (Txdb DBengine V5.0) on x86_64-pc-linux-gnu, compiled by gcc (GCC) 7.3.0, 64-bit                                                                                                                                                                                                            |
+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
SQLRowCount returns 1
1 rows fetched

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
你可以使用ODBC驱动程序来连接PostgreSQL数据库。以下是连接PostgreSQL数据库的一般步骤: 1. 安装PostgreSQL ODBC驱动程序:首先,你需要安装PostgreSQL ODBC驱动程序。你可以从PostgreSQL官方网站下载并安装适用于你的操作系统的驱动程序。 2. 配置ODBC数据源:在安装完成后,你需要配置ODBC数据源。在Windows操作系统上,你可以在"控制面板"中找到"ODBC数据源(64位)"或"ODBC数据源(32位)"。选择与你的操作系统位数相对应的选项,并点击"添加"或"配置"按钮。 3. 配置数据源名称和描述:在ODBC数据源配置界面中,选择"系统DSN"选项卡,然后点击"添加"按钮。在弹出的对话框中,选择PostgreSQL ODBC驱动程序,并点击"完成"按钮。 4. 配置连接参数:在配置连接参数的界面中,输入一个唯一的数据源名称和一个可选的描述。然后,在服务器字段中输入PostgreSQL数据库的主机名或IP地址,在数据库字段中输入要连接的数据库名称。根据需要,配置其他参数(如用户名和密码)。 5. 测试连接:完成上述步骤后,点击"测试连接"按钮以验证是否成功连接到PostgreSQL数据库。如果一切正常,你应该会看到一个成功的连接消息。 6. 在应用程序中使用ODBC连接:最后,在你的应用程序中使用ODBC连接字符串来连接到PostgreSQL数据库。你可以使用各种编程语言和框架来实现此操作,如Java、Python、C#等。 请注意,上述步骤只是一般的指导,实际操作可能会因你的操作系统和具体需求而有所不同。你可以参考PostgreSQLODBC驱动程序的文档以获取更详细的信息和指导。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值