Linux UinxODBC安装与配置
一、简介
ODBC是Open Database Connect 即开发数据库互连的简称,它是一个用于访问数据库的统一界面标准。ODBC引入一个公共接口以解决不同数据库潜在的不一致性,从而很好的保证了基于数据库系统的应用程序的相对独立性。
很多程序员都已经体会到了在Windows平台下通过ODBC进行数据库编程开发的益处,其实在Linux/Unix下现在也有了自己的ODBC,可以使我们的数据库编程就像在Windows平台下一样简单。
环境:Red Hat 6.1 32位系统下的unixODBC-2.3.0
二、UinxODBC安装
1.下载UnixODBC安装包
下载地址:ftp://ftp.unixodbc.org/pub/unixODBC/unixODBC-2.3.0.tar.gz
下载安装包unixODBC-2.3.0.tar.gz放到/usr/local下。
2.安装
运行下述命令:
cd /usr/local tar zxvf unixODBC-2.3.0.tar.gz cd unixODBC-2.3.0 ./configure --prefix=/usr/local/unixODBC-2.3.0 --includedir=/usr/include --libdir=/usr/lib --bindir=/usr/bin --sysconfdir=/etc make make install
安装完成
3.测试
运行命令:
odbcinst -j
(1)安装成功:
终端会显示UnixODBC相关信息:
unixODBC所需的头文件都被安装到了/usr/inlucde下,编译好的库文件安装到了/usr/lib下,与unixODBC相关的可执行文件安装到了/usr/bin下,配置文件放到了/etc下。安装完成
(2)安装失败:
终端显示:
odbcinst: error while loading shared libraries: libodbcinst.so.2: cannot open shared object file: No such file or directory
错误处理:
安装共享库后要注意共享库路径设置问题, 如下:
(1)如果库文件安装到了/lib或/usr/lib目录下:
那么需在该目录下执行一下ldconfig命令;
ldconfig命令的用途, 主要是在默认搜寻目录(/lib和/usr/lib)以及动态库配置文件/etc/ld.so.conf内所列的目录下, 搜索出可共享的动态链接库(格式如lib*.so*),
进而创建出动态装入程序(ld.so)所需的连接和缓存文件. 缓存文件默认为/etc/ld.so.cache, 此文件保存已排好序的动态链接库名字列表.
(2)如果共享库文件安装到了/usr/local/lib(很多开源的共享库都会安装到该目录下)或其它"非/lib或/usr/lib"目录下:
那么在执行ldconfig命令前, 还要把新共享库目录加入到共享库配置文件/etc/ld.so.conf中,如下:
# cat /etc/ld.so.conf
include ld.so.conf.d/*.
(3)如果共享库文件安装到了其它"非/lib或/usr/lib" 目录下, 但是又不想在/etc/ld.so.conf中加路径(或者是没有权限加路径):
那可以export一个全局变量LD_LIBRARY_PATH,然后运行程序的时候就会去这个目录中找共享库.
LD_LIBRARY_PATH的意思是告诉loader在哪些目录中可以找到共享库. 可以设置多个搜索目录, 这些目录之间用冒号分隔开.
比如安装了一个mysql到/usr/local/mysql目录下, 其中有一大堆库文件在/usr/local/mysql/lib下面, 则可以在.bashrc或.bash_profile或shell里加入以下语句即可:
export LD_LIBRARY_PATH=/usr/local/mysql/lib:$LD_LIBRARY_PATH
一般来讲这只是一种临时的解决方案, 在没有权限或临时需要的时候使用.