Linux麒麟下金仓数据库配置ODBC数据源
1.准备工作:
开始检查,在终端里输入:odbcinst
如果提示:bashodbcinst: command not found
那么需要在软件包管理中安装 < A complete ODBC driver manager forLinux>
(本次采用的是unixODBC-2.2.1,在kylinOS下编译源码失败,在SUSE OS下编译成功后再在kylinOS进行安装)
进行QT开发的时候请根据需要安装相应的odbc包
(qt编译生成的libqsqlodbc.so等必须的库)
安装完成后,在终端中输入:odbcinst
提示:
*unixODBC -odbcinst *
.
.
略
就证明已安装odbc数据源管理
2.安装KingBase数据库
以默认的路径安装数据库。(提示选择临时缓存目录时选择根目录/)
如果是在root账户安装,选择不要初始化数据库。安装完成后在非root账户下初始化数据库,然后再切回root账户,运行实例的instancereg.sh文件即可创建数据库初始化实例。
如果是在非root账户安装,则可以直接初始化数据库。安装完成后,需要切到root账户,先执行/opt/Kingbase/ES/V7/Install/root.sh,再执行数据库实例instancereg.sh文件。
配置数据源
执行命令:
cd /usr/local/etc/
能够在文件夹下看到odbcinst.ini 复制其中的所有内容
打开 /etc/odbcinst.ini 文件,将复制的内容粘贴到文件后面,保存。
将/opt/Kingbase/ES/V7/unixodbc/lib 下的libodbcinst.so.1 复制到/usr/lib 文件夹下
在/usr/local/etc/目录下创建数据源模板 《T》 (文件名随意)
按照通用的配置方法编写模板即可
然后执行:
odbcinst -i -s -f T
3.测试是否成功
(法1):在输入isql kingbase (kingbase为模板创建的数据源名称)
提示
+----------------------------------------------------------------------------------+
| Connected! |
略
证明数据源成功连接
(法2):本次执行法1时(提示缺少数据源或默认驱动)失败,直接在qt下编写测试程序,程序可以连接数据库,证明数据源安装成功。
注意:执行query语句时要使用以下或类似语法:
QSqlQuery *query = newQSqlQuery(db); / /语法问题
注意:配置数据源只对当前用户生效,切换用户后需要再次到
/usr/local/etc/路径下,执行odbcinst -i -s -f T 命令
如何修改已经配置好的数据源
当用户为root时,打开/root/.odbc.ini 文件修改对应的参数即可
<.odbc.ini>文件为隐藏文件,可以使用VI,VIM等命令修改,也可以查看隐藏文件进行修改
当为其他用户的时候,修改/home/用户 下的<.odbc.ini> 文件即可。
当完成以上操作后执行isql kingbase 后仍然失败
请执行命令:
isql kingbase -v
此命令会提示相应的错误信息:
1.提示缺少文件的 ***.so的时候,请在系统下搜索相应的文件,并复制到相/usr/lib 文件夹下。
2.提示网络不通,请检查网路。