使用ODBC访问openGauss(上)
ODBC(Open Database Connectivity,开放数据库互连)是由Microsoft公司基于X/OPEN CLI提出的用于访问数据库的应用程序编程接口。应用程序通过ODBC提供的API与数据库进行交互,增强了应用程序的可移植性、扩展性和可维护性。ODBC的系统结构参见图1。ODBC系统机构openGauss目前在以下环境中提供对ODBC的支持。ODBC支持平台。
ODBC(Open Database Connectivity,开放数据库互连)是由Microsoft公司基于X/OPEN CLI提出的用于访问数据库的应用程序编程接口。应用程序通过ODBC提供的API与数据库进行交互,增强了应用程序的可移植性、扩展性和可维护性。
ODBC的系统结构参见图1。
图 1 ODBC系统机构
openGauss目前在以下环境中提供对ODBC的支持。
表 1 ODBC支持平台
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”目录下),并在服务器端进行配置。
获取unixODBC-2.3.9源码包。
获取参考地址:http://www.unixodbc.org/download.html
安装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
替换客户端openGauss驱动程序。
- 将openGauss-x.x.x-ODBC.tar.gz解压到“/usr/local/lib”目录下。解压会得到“psqlodbcw.la”和“psqlodbcw.so”两个文件。
- 将openGauss-x.x.x-ODBC.tar.gz解压后lib目录中的库拷贝到“/usr/local/lib”目录下。
配置数据源。
配置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文件配置参数
配置数据源文件。
在“/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文件配置参数
更多推荐
所有评论(0)