Informix的连接工作通过Windows,而不是通过Cygwin的(Informix conne

2019-10-17 11:27发布

真的不知道哪里有这种人去。 我有一个调用连接到Informix数据库PERL脚本的PHP脚本。 当我运行该脚本到Windows命令提示符这种设置工作得很好,但是当我试图通过的cron Cygwin中运行它失败的

[Informix的] [Informix ODBC驱动程序]无法加载翻译共享库(DLL)。 (SQL-IM009)

我曾尝试加入的Informix bin目录(/ cygdrive / C /程序\文件\(86)/ IBM / Informix的/客户端SDK / bin)添加到PATH变量在crontab文件,但没有改变。 我也尝试添加相同的目录在crontab文件中INFORMIXDIR变量,但后来我得到了以下错误消息

[Informix的] [Informix ODBC驱动程序] [Informix的]未指定系统错误= -23101。 (SQL-HY000)

如果我看在finderr.exe的错误(由驱动器提供)我看到这意味着它是无法加载语言环境类别或我的INFORMIXDIR是不正确的,但我不知道如何设置CLIENT_LOCALE DB_LOCALE或。

然后我觉得我通过使用正确的目录分隔符固定这一点,我放弃了bin子目录中的crontab的INFORMIXDIR变量,因为我又拿到了SQL-IM009错误。

我使用Cygwin中Windows的PHP和Perl的可执行文件,所以我真的不知道为什么,如果我通过命令提示符运行它,它不会因为它的工作。 会有人知道这是为什么?

我在Windows Server 2008 R2云实例上运行这一点,我试图复制一个工作设置是这样我们就可以将其移动到非现场位置。

Answer 1:

事实证明,cygwin的不喜欢的客户端SDK在目录一旦我重新安装它到C:/ IBM / Informix的/客户端SDK一切都开始工作。 我不知道,如果问题是括号或空格,但把它们带出路径似乎这样的伎俩。



Answer 2:

看起来更像是在你的PATH环境中使用反斜杠和斜线的组合问题。 斜杠* nix中,反斜杠为WIN和DOS。 CLIENT,DBLOCALE,DBDATE等可在WIN / DOS和的.profile,.cshrc和.login文件等,这取决于你使用的* nix的外壳您servernane.cmd文件中设置。 您可以安装Informix的二进制文件和其他支持文件在任何你喜欢的目录,只要INFORMIXDIR环境指向安装目录。 我已经安装了11.70.FC6在C:\ INFORMIX和我的数据库空间在C:\数据库空间。



文章来源: Informix connection works through Windows, but not through Cygwin