You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

www-data无法找到ODBC驱动,SQLAllocHandle调用失败求助

SQL Anywhere 17 ODBC连接故障排查(Ubuntu + PHP)

我是Linux、ODBC及PHP新手,之前能让Ubuntu服务器上的PHP脚本通过ODBC连接外部只读SQL Anywhere 17数据库,后来出了问题,恢复服务器快照后还是没法正常运行。

相关文件信息

lrwxrwxrwx 1 root     root          18 Feb 28 10:13 libdbodbc17_r.so -> libdbodbc17_r.so.1
-rwxr-xr-x 1 www-data www-data 1804560 Feb 28 10:13 libdbodbc17_r.so.1

www-data执行isql的初始错误

执行命令:

sudo -u www-data isql -v DSN UID PASSWORD

得到错误输出:

[01000][unixODBC][Driver Manager]Can't open lib '/opt/sqlanywhere17/lib64/libdbodbc17_r.so' : file not found
[ISQL]ERROR: Could not SQLConnect

配置LD_LIBRARY_PATH后的新问题

我在/etc/apache2/envvars中添加了export LD_LIBRARY_PATH=/opt/sqlanywhere17/lib64,库文件找不到的问题解决了,但又出现新错误:

[IM004][unixODBC][Driver Manager]Driver's SQLAllocHandle on SQL_HANDLE_HENV failed [ISQL]ERROR: Could not SQLConnect

我完全搞不懂这个错误的原因和来源。目前的情况是:终端普通用户(非root)执行isql可以正常连接,我对比了两种身份下的strace日志以及普通用户的成功执行结果,但还是找不到问题所在。

内容的提问来源于stack exchange,提问作者TLaine

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 05:22:12