更改iSeries上的作业描述或作业日志访问ODBC DB2 iSeries

更改iSeries上的作业描述或作业日志访问ODBC DB2 iSeries,db2,odbc,ibm-midrange,Db2,Odbc,Ibm Midrange,我在Linux Centos服务器上使用iSeries Access ODBC驱动程序,使用PHP/PDO访问as/400 当网页进行ODBC查询时,它会写入QZDASOINIT上的作业日志 是否有任何ODBC.ini设置可用于禁止写入作业日志,更改所使用的作业描述或服务器程序?它正在淹没日志,很难找到重要的遗留相关QZDASOINIT作业。我使用的是7.1。我的QZDASOINIT作业使用作业描述QDFTSVR运行,该作业设置为LOG(4 0*NOLIST)。我不会得到作业日志,除非服务器作业

我在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,文本=*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本身的某些内容,例如您正在连接的用户的工作描述。

我注意到其中的Trace=0,并进行了搜索。我发现Trace:允许将ODBC应用程序发出的函数调用序列记录到日志文件中。我将其设置为0,并将检查是否有帮助。若要启用ODBC跟踪,必须将跟踪设置为1。Trace=0关闭跟踪,这是默认设置。您还需要添加TraceFile=/tmp/odbc.log(或其他一些目录/文件名)并将其放入odbcinst.ini文件中?每个ODBC查询都有CPIAD09消息吗?@johnley-我已经离开了以前的雇主,不再做任何开发工作,因此我恐怕无法回答您的问题:-(操作似乎没有任何错误。我注意到在Windows ODBC安装程序中有一个“在Disconnect打印作业日志”。我在第二个响应中发现了一个Trace=0,我希望这会有所帮助。感谢您的响应。结果表明Trace=0没有任何作用。而且作业日志不是错误,它们是空白的。我想知道您的QHST文件是什么样子的?它是否对每个ODBC查询都有CPIAD09消息?我从客户端10.1.0.1获得了一个连接到jo的CPIAD09用户WEBUSERb 906025/QUSER/QZDASOINIT用于每个连接。给定的连接可以服务于许多ODBC查询。是的,对不起,我在每个连接上都看到它们。我正在尝试启用连接池和/或持久性以减少连接请求的数量,但尚未成功。