Linux 无法加载ODBC库指定的驱动程序
我正在尝试安装ODBC驱动程序,我遇到了麻烦Linux 无法加载ODBC库指定的驱动程序,linux,odbc,drivers,openedge,progress-db,Linux,Odbc,Drivers,Openedge,Progress Db,我正在尝试安装ODBC驱动程序,我遇到了麻烦 [root@Crux pkg]# isql -v [IM002][DataDirect][ODBC lib] Data source name not found and no default driver specified [ISQL]ERROR: Could not SQLConnect [root@Crux pkg]# isql -3 SUBS2A [IM003][DataDirect][ODBC lib] Specified driver
[root@Crux pkg]# isql -v
[IM002][DataDirect][ODBC lib] Data source name not found and no default driver specified
[ISQL]ERROR: Could not SQLConnect
[root@Crux pkg]# isql -3 SUBS2A
[IM003][DataDirect][ODBC lib] Specified driver could not be loaded
[ISQL]ERROR: Could not SQLConnect
我的INI文件如下
odbcinst.ini
odbc.ini
我已经确保通过ldd正确加载所有依赖项
更新
输出:strace isql-v
输出:strace isql-3 SUS2A
输出:/tmp/odbctrace.out
谢谢您应该检查您的ODBC驱动程序是否可加载:
ldd /usr/dlc/odbc/lib/pgoe1023.so
加载程序可能无法找到作为共享对象(so库)的依赖项,这些对象在您的环境中尚不可用或在不同版本中不可用
我建议您添加/usr/dlc/odbc/lib/
,或者根据您的系统添加其他路径:
- 在环境变量
LD\u LIBRARY\u PATH中
- 为linux加载器添加一个特定的文件,例如
行/etc/ld.so.conf.d/odbc pgoe.conf
,并使用/usr/dlc/odbc/lib/
刷新(最佳选项)ldconfig
ldd
命令输出。可能预期的库文件名与Linux发行版不完全匹配
更新:
确认ld.so.conf文件是使驱动程序工作的解决方案。你应该测试一下
这个论坛指的是一个论坛。也许这个解决方案会解决你的问题
如果仍然错误,请报告strace isql-3 SUS2A的输出。在写入错误消息之前,您可能会发现错误的线索,例如库加载失败、文件访问权限问题或其他任何问题。(1)您可以在使用驱动程序之前检查驱动程序是否正确
$ ivtestlib /usr/dlc/odbc/lib/pgoe1023.so
(2) 加载驱动程序时查看日志
在控制台中
tail -f /path/to/SysLog_OrOtherName.file
在另一个控制台中
odbc.sh
不要介意。我患了脑痉挛。你在特定的TCP端口上测试过网络连接吗?例如,对于nc 192.168.1.2 4000,请检查驱动程序与系统架构和服务器的兼容性问题。你应该链接到我没有链接到它,因为它不再相关,并且问题以与该帖子上的更新无关的另一种方式得到解决。是的,已经完成了,所有内容都加载了。。。抱歉,我将编辑我的问题。您是否使用了我建议的/etc/ld.so.conf.d/方法,或者您在上一个问题中描述的“移动”?您不应该将库从一个位置移动到另一个位置。。。库可以由C代码本身动态加载(在ELF中没有对加载程序的引用)。因此,我建议您使用“ldd”测试ODBC驱动程序安装中的所有库(可能都在/usr/dlc/ODBC/lib中)。我确实把它放在了环境文件中,还运行了导出。我认为你的答案很有帮助,非常感谢,但仍然不是一个解决方案。以下是我的说明:创建一个文件“/etc/ld.so.conf.d/odbc pgoe.conf”,其中一行内容为“/usr/dlc/odbc/lib/”。这是确认的,它应该工作真的很抱歉,我犯了一个错误的命令,以监测。预期会出现“isql-v”错误消息,可能您尚未设置默认驱动程序。请发送“strace isql-3 SUBS2A”的输出和/tmp/odbctrace.out的内容。我的系统没有这个实用程序,我也不知道您所说的系统日志。
tail -f /path/to/SysLog_OrOtherName.file
odbc.sh