人大金仓 使用ODBC连接KingbaseES数据库

1.什么是ODBC

开放数据库互联(ODBC)是数据库应用程序编程接口(API)的一种规范,支持带有C函数库的SQL语句。ODBC不需要预处理器来编译应用程序,可支持”安全套接层”(SSL)。KingbaseES支持使用ODBC连接至数据库。

2.UnixODBC的安装与配置

在Linux平台下如果需要使用OBDC连接数据库,则需要先安装unixODBC,然后在安装相应的ODBC驱动。 有些操作系统如果自带了unixODBC,则无需安装(执行odbcinst –version命令检测是否已经安装)。

安装包获取

1.官网下载http://www.unixodbc.org

unixODBC-2.3.7.tar.gz

编译安装

1.检查是否有gcc

[root@host2 ~]# gcc

-bash: gcc: command not found

安装机器上没有gcc,安装gcc

yum install gcc –y

2.解压文件

tar -xvf unixODBC-2.3.7.tar.gz

3.编译安装

[root@host3 unixODBC]# cd unixODBC-2.3.7
[root@host3 unixODBC-2.3.7]# ./configure --prefix=/usr/local/unixODBC
[root@host3 unixODBC-2.3.7]#make
[root@host3 unixODBC-2.3.7]#make install

配置环境变量

[root@host3 unixODBC-2.3.7]# touch /etc/profile.d/unixOdbc.sh
unixOdbc.sh文件内容如下:
export ODBCMD_HOME=/usr/local/unixODBC
export PATH=$ODBCMD_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ODBCMD_HOME/lib:$LD_LIBRARY_PATH

执行 source /etc/profile使配置的环境变量生效 验证unixODBC安装配置是否成功

 [root@host3 unixODBC-2.3.7]# odbcinst --version
unixODBC 2.3.7
[root@host3 unixODBC-2.3.7]# odbcinst -j
unixODBC 2.3.7
DRIVERS............: /usr/local/unixODBC/etc/odbcinst.ini
SYSTEM DATA SOURCES: /usr/local/unixODBC/etc/odbc.ini
FILE DATA SOURCES..: /usr/local/unixODBC/etc/ODBCDataSources
USER DATA SOURCES..: /root/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8

能够正确的输出unixODBC版本号,说明安装配置成功了。

3.使用ODBC连接KingbaseES数据库

3.1.修改配置文件

修改odbc.ini

vim /usr/local/unixODBC/etc/odbc.ini
[V8R3]
Description=KingbaseES
Driver=KingbaseES V8R3 ODBC Driver
Servername=2000::5609
Database=TEST
Username=SYSTEM
Password=12345678ab
Port=54321

修改odbcinst.ini

vim /usr/local/unixODBC/etc/odbcinst.ini
[KingbaseES V8R3 ODBC Driver]
Description=ODBC for KingbaseES
Driver=/home/kingbase/370/patch/odbc/lib/kdbodbcw.so
Debug=1
CommLog=1

使文件生效

source ~/.bash_profile

测试连接

 [root@host1 profile.d]# isql v8r3
+---------------------------------------+
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
+---------------------------------------+
SQL> select count(*) from t1;
+---------------------+
| count               |
+---------------------+
| 470797              |
+---------------------+
SQLRowCount returns 1
1 rows fetched
SQL>

更多信息,参见https://help.kingbase.com.cn/v8/index.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值