CentOS 7升级unixODBC
操作系统为CentOS 7.9,在使用unixODBC连接数据库时,isql测试连接正常,但iusql异常:
[unixODBC][Driver Manager]Data source name not found, and no default driver specified
[ISQL]ERROR: Could not SQLDriverConnect
ODBCINI配置参数检查都正常,相同的配置的Ubuntu 18.04中均正常,于是怀疑CentOS 7上的unixODBC可能存在兼容性问题
CentOS 7上当前的unixODBC版本为
[root@localhost ~]# rpm -qa | grep unixODBC
unixODBC-2.3.1-14.el7.x86_64
unixODBC-devel-2.3.1-14.el7.x86_64
Ubuntu 18.04上的unixODBC版本为
root@a01:~# isql --version
unixODBC 2.3.4
比CentOS 7.9上的要高,于是考虑升级unixODBC的版本。
从pkgs.org上(https://pkgs.org/download/unixODBC(x86-64))发现,有适合的microsoft源的版本为2.3.7
安装packages-microsoft-prod.rpm:
rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm
清理yum源缓存
yum clean all
升级 unixODBC:
yum -y upgrade unixODBC
升级完成后unixODBC的版本为2.3.7
[gbasedbt@localhost ~]$ iusql --version
unixODBC 2.3.7
再次尝试iusql测试连接,正常
[gbasedbt@localhost ~]$ iusql -v testdb
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL>