我在 Linux Centos 服务器上使用 iSeries Access ODBC 驱动程序使用 PHP/PDO 访问 as/400。
当网页进行 ODBC 查询时,它会写入 QZDASOINIT 上的作业日志。
是否有任何 ODBC.ini 设置可用于禁用写入作业日志、更改作业描述或使用的服务器程序?它淹没了日志,很难找到与 QZDASOINIT 相关的重要遗留作业。
我在 Linux Centos 服务器上使用 iSeries Access ODBC 驱动程序使用 PHP/PDO 访问 as/400。
当网页进行 ODBC 查询时,它会写入 QZDASOINIT 上的作业日志。
是否有任何 ODBC.ini 设置可用于禁用写入作业日志、更改作业描述或使用的服务器程序?它淹没了日志,很难找到与 QZDASOINIT 相关的重要遗留作业。
我在7.1。我的 QZDASOINIT 作业使用作业描述 QDFTSVR 运行,该作业描述设置为 LOG(4 0 *NOLIST)。除非服务器作业失败,否则我不会得到作业日志。在他们处于活动状态时查看工作,并查看他们使用的工作描述。此外,检查作业是否异常结束(这就是您获取作业日志的原因)。
我在 6.1 上,我们的 QZDASOINIT 作业使用作业描述 QGPL/QDFTJOBD 运行,我们的日志设置为 4 级,严重性 0 和 text = *NOLIST(就像 Buck 的一样)。
但是,在我们的作业日志中显示的唯一内容是诸如“ABC 库中的文件 XYZ 已存在”之类的内容,当调用程序时,执行查询不会导致将任何内容写入作业日志。
这是我的 odbc.ini
[primary]
Description = primary
Driver = iSeries Access ODBC Driver
System = xxx.xxx.xxx.xxx
UserID = xxxxxxxxxx
Password = xxxxxxxxxx
Naming = 0
DefaultLibraries = QGPL
Database = xxxxxxxxxx
ConnectionType = 0
CommitMode = 2
ExtendedDynamic = 0
DefaultPkgLibrary = QGPL
DefaultPackage = A/DEFAULT(IBM),2,0,1,0,512
AllowDataCompression = 1
LibraryView = 0
AllowUnsupportedChar = 0
ForceTranslation = 0
Trace = 0
和我的 odbcinst.ini
[iSeries Access ODBC Driver]
Description = iSeries Access for Linux ODBC Driver
Driver = /usr/lib/libcwbodbc.so
Setup = /usr/lib/libcwbodbcs.so
NOTE1 = If using unixODBC 2.2.11 or later and you want the 32 and 64-bit ODBC drivers to share DSN's,
NOTE2 = the following Driver64/Setup64 keywords will provide that support.
Driver64 = /usr/lib/lib64/libcwbodbc.so
Setup64 = /usr/lib/lib64/libcwbodbcs.so
Threading = 2
DontDLClose = 1
UsageCount = 1
还有我的连接字符串:
$this->db_connection = new PDO("odbc:DRIVER={iSeries Access ODBC Driver};SYSTEM=10.xxx.xxx.xxx;PROTOCOL=TCPIP", $temp_username, $temp_password);
我不知道您可以在 odbc.ini 或 odbcinst.ini 中进行任何会影响登录 IBM i 的设置,我认为您需要更改 i 本身的某些内容,例如您是用户的工作描述与连接。