Linux配置odbc

Linux配置odbc


unixODBC-2.3.9.tar
用root配置 检查gcc包
[root@localhost home]# rpm -qa|grep gcc
libgcc-4.8.5-44.el7.x86_64
gcc-4.8.5-44.el7.x86_64

[root@localhost home]# tar -xvf unixODBC-2.3.9.tar.gz
[root@localhost home]#cd unixODBC-2.3.9/
[root@localhost unixODBC-2.3.0]# ./configure
[root@localhost unixODBC-2.3.0]# make && make install
[root@localhost unixODBC-2.3.0]# odbcinst -j
unixODBC 2.3.9
DRIVERS…: /usr/local/etc/odbcinst.ini
SYSTEM DATA SOURCES: /usr/local/etc/odbc.ini
FILE DATA SOURCES…: /usr/local/etc/ODBCDataSources
USER DATA SOURCES…: /root/.odbc.ini
SQLULEN Size…: 8
SQLLEN Size…: 8
SQLSETPOSIROW Size.: 8

UnixODBC默认安装路径为/usr/local。动态库路径为/usr/local/lib。
libdodbc.so依赖libodbcinst.so,有时候安装UnixODBC 生成的动态库是 libodbcinst.so.1.0.0 或者 libodbcinst.so.2.0.0 等,找不到libodbcinst.so ,此时需要对实际库文件建立软链接 。
ln –s libodbcinst.so.1.0.0 libodbcinst.so

**配置文件/usr/local/etc/odbcinst.ini **
[DM7 ODBC DRIVER]
Description = ODBC DRIVER FOR DM7
Driver = /opt/dmdbms/bin/libdodbc.so

**配置文件/usr/local/etc/odbc.ini **
Description = DM ODBC DSN
Driver = DM7 ODBC DRIVER
SERVER = localhost
UID = SYSDBA
PWD = SYSDBA
TCP_PORT = 5236

配置虽然简单,但是一定要明白各个参数代表的含义,日常工作中遇到过很多用户配置出错的情况,比如odbcinst.ini【】配置驱动名称是DM ODBC DRIVER,
但在odbc.ini中DRIVER配置是DM7 ODBC DRIVER,
两个地方配置的名称不一致;
还有odbc.ini【】配置数据源DSN名称是DM,但程序代码中设置的DSN是DM7

如果isql连接失败,可以通过命令加 –v 查看具体的报错信息,然后根据报错信息再进行排查
在这里插入图片描述

ldd /opt/dmdbms/bin/libdodbc.so
检查libdodbc.so依赖的文件是否有问题。
依赖的so文件明明存在,但ldd仍提示找不到,一般是环境变量LD_LIBRARY_PATH设置问题
解决方式:修改/etc/profile.d添加LD_LIBRARY_PATH =$LD_LIBRARY_PATH: /opt/dmdbms/bin设置,然后重启机器生效;

测试连接 用dmdba账号 Isql dm8
测试ODBC:
[root@dca01 etc]# chmod 775 odbcinst.ini
[root@dca01 etc]# chmod 775 odbc.ini

==================================================================
tar -xzvf unixODBC-2.3.0.tar.gz
cd unixODBC-2.3.0
./configure --enable-gui=no
make
make install
#odbc_config --version
#odbcinst -j
cd /usr/local/etc/
[root@localhost etc]# cat odbc.ini
[dm7]
Description = DM ODBC DSND
Driver = DM7 ODBC DRIVER
SERVER = localhost
UID = dmhs22
PWD = dameng123
TCP_PORT = 5236

[root@localhost etc]#
[root@localhost etc]# cat odbcinst.ini
[DM7 ODBC DRIVER]
Description = ODBC DRIVER FOR DM7
DRIVER = /dm7/bin/libdodbc.so
[root@localhost etc]#

[dmdba@ora63 ~]$ isql dm7
±--------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
±--------------------------------------+

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值