不知道该去哪里。我有一个 PHP 脚本,它调用一个连接到 Informix 数据库的 PERL 脚本。当我将脚本运行到 Windows cmd 提示符时,此设置工作得很好,但是当我尝试在 cygwin 中通过 cron 运行它时,它会失败
[Informix][Informix ODBC 驱动程序]无法加载翻译共享库 (DLL)。(SQL-IM009)
我尝试将 Informix bin 目录 (/cygdrive/c/Program\ Files\ (x86)/IBM/Informix/Client-SDK/bin) 添加到 crontab 文件中的 PATH 变量中,但没有任何更改。我还尝试将同一目录添加到 crontab 文件中的 INFORMIXDIR 变量中,但随后出现以下错误消息
[Informix][Informix ODBC 驱动程序][Informix]未指定的系统错误 = -23101。(SQL-HY000)
如果我在 finderr.exe(由驱动程序提供)中查看该错误,我发现这意味着它无法加载语言环境类别或我的 INFORMIXDIR 不正确,但我不确定如何设置 CLIENT_LOCALE 或 DB_LOCALE。
然后我想我通过使用正确的目录分隔符解决了这个问题,并在 crontab 中删除了 INFORMIXDIR 变量的 bin 子目录,因为我再次遇到 SQL-IM009 错误。
我在 cygwin 中使用 Windows PHP 和 PERL 可执行文件,所以我不确定为什么如果我通过 cmd 提示符运行它,它为什么不能正常工作。有人知道这是为什么吗?
我在 Windows Server 2008 R2 云实例上运行它,并且我正在尝试复制一个工作设置,以便我们可以将它移动到异地位置。