ODBC(Open Database Connectivity,开放数据库互连)是由Microsoft公司基于X/OPEN CLI提出的用于访问数据库的应用程序编程接口。应用程序通过ODBC提供的API与数据库进行交互,增强了应用程序的可移植性、扩展性和可维护性。

ODBC的系统结构参见图1。

图 1 ODBC系统机构

openGauss目前在以下环境中提供对ODBC的支持。

表 1 ODBC支持平台

1f56679626c3d18eb26e1813de87764f.jpeg

Linux下的ODBC包

从发布包中获取,包名为openGauss-*.*.0-ODBC.tar.gz。Linux环境下,开发应用程序要用到unixODBC提供的头文件(sql.h、sqlext.h等)和库libodbc.so。这些头文件和库可从unixODBC-2.3.0的安装包中获得。

配置数据源

将openGauss提供的ODBC DRIVER(psqlodbcw.so)配置到数据源中便可使用。配置数据源需要配置“odbc.ini”和“odbcinst.ini”两个文件(在编译安装unixODBC过程中生成且默认放在“/usr/local/etc”目录下),并在服务器端进行配置。

  1. 获取unixODBC-2.3.9源码包。

    获取参考地址:http://www.unixodbc.org/download.html

  2. 安装unixODBC。如果机器上已经安装了其他版本的unixODBC,可以直接覆盖安装。

    目前不支持unixODBC-2.2.1版本。以unixODBC-2.3.0版本为例,在客户端执行如下命令安装unixODBC。默认安装到“/usr/local”目录下,生成数据源文件到 “/usr/local/etc”目录下,库文件生成在“/usr/local/lib”目录。

tar zxvf unixODBC-2.3.9.tar.gz
cd unixODBC-2.3.9
#修改configure文件(如果不存在,那么请修改configure.ac),找到LIB_VERSION
#将它的值修改为"1:0:0",这样将编译出*.so.1的动态库,与psqlodbcw.so的依赖关系相同。
vim configure

./configure --enable-gui=no #如果要在ARM服务器上编译,请追加一个configure参数: --build=aarch64-unknown-linux-gnu
make
#安装可能需要root权限
make install

  1. 替换客户端openGauss驱动程序。

    1. 将openGauss-x.x.x-ODBC.tar.gz解压到“/usr/local/lib”目录下。解压会得到“psqlodbcw.la”和“psqlodbcw.so”两个文件。
    2. 将openGauss-x.x.x-ODBC.tar.gz解压后lib目录中的库拷贝到“/usr/local/lib”目录下。
  2. 配置数据源。

    1. 配置ODBC驱动文件。

      在“/xxx/odbc/etc/odbcinst.ini”文件中追加以下内容。

[GaussMPP]
Driver64=/xxx/odbc/lib/psqlodbcw.so
setup=/xxx/odbc/lib/psqlodbcw.so

odbcinst.ini文件中的配置参数说明如表2所示。

表 2 odbcinst.ini文件配置参数

51444896494395cb0cec0df3ab936e67.jpeg

配置数据源文件。

在“/usr/local/etc/odbc.ini”文件中追加以下内容。

[MPPODBC]
Driver=GaussMPP
Servername=10.145.130.26(数据库Server IP)
Database=postgres (数据库名)
Username=omm (数据库用户名)
Password= (数据库用户密码)
Port=8000 (数据库侦听端口)
Sslmode=allow

odbc.ini文件配置参数说明如表3所示。

表 3 odbc.ini文件配置参数

808e05c21f3c0a0425b3a04b8232daa4.jpeg

9743997f1ff4862603d27f4e03dd9b1e.jpeg

3f829c7c38e575fd2f67364c6cc530f6.jpeg

2933b1951d3a4fab5f2bb4a05eedbbe4.jpeg

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐