Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何处理DB2 for I日志状态_Db2_Db2 400 - Fatal编程技术网

如何处理DB2 for I日志状态

如何处理DB2 for I日志状态,db2,db2-400,Db2,Db2 400,为了测试一个qshell脚本,该脚本自动清理DB2fori中超过2天的日志,我需要让一些日志处于未附加或在线状态(脚本跳过具有此类状态的日志)。是否有人可以帮助我并建议如何使用System I navigator或SQL语句更改/更新日志状态 目前,我在“日记账接收人”部分中有“已附加”状态的项目,当我更改日记账的接收人时,将在附加状态下创建一个新的日记账接收人,并将上一个移动到联机状态。我没有找到任何方法将它们移动到其他状态。 我还尝试使用SQL语句从DISPLAY_日志中获取一些信息,但没有

为了测试一个qshell脚本,该脚本自动清理DB2fori中超过2天的日志,我需要让一些日志处于未附加或在线状态(脚本跳过具有此类状态的日志)。是否有人可以帮助我并建议如何使用System I navigator或SQL语句更改/更新日志状态

目前,我在“日记账接收人”部分中有“已附加”状态的项目,当我更改日记账的接收人时,将在附加状态下创建一个新的日记账接收人,并将上一个移动到联机状态。我没有找到任何方法将它们移动到其他状态。 我还尝试使用SQL语句从DISPLAY_日志中获取一些信息,但没有成功

select * from TABLE (QSYS2.DISPLAY_JOURNAL(
    'QSYS2',    -- put the JOURNAL_LIBRARY parameter value instead of 'JOURNAL_LIBRARY' (VARCHAR(10))
    'QSQJRN',   -- put the JOURNAL_NAME parameter value instead of 'JOURNAL_NAME' (VARCHAR(10))
    '', -- put the STARTING_RECEIVER_LIBRARY parameter value instead of 'STARTING_RECEIVER_LIBRARY' (VARCHAR(10))
    '', -- put the STARTING_RECEIVER_NAME parameter value instead of 'STARTING_RECEIVER_NAME' (VARCHAR(10))
    '', -- put the STARTING_TIMESTAMP parameter value instead of 'STARTING_TIMESTAMP' (TIMESTAMP)
    '', -- put the STARTING_SEQUENCE parameter value instead of 'STARTING_SEQUENCE' (DECIMAL(21,0))
    '', -- put the JOURNAL_CODES parameter value instead of 'JOURNAL_CODES' (VARCHAR(48))
    '', -- put the JOURNAL_ENTRY_TYPES parameter value instead of 'JOURNAL_ENTRY_TYPES' (VARCHAR(1200))
    '', -- put the OBJECT_LIBRARY parameter value instead of 'OBJECT_LIBRARY' (VARCHAR(10))
    '', -- put the OBJECT_NAME parameter value instead of 'OBJECT_NAME' (VARCHAR(10))
    '', -- put the OBJECT_OBJTYPE parameter value instead of 'OBJECT_OBJTYPE' (VARCHAR(10))
    '', -- put the OBJECT_MEMBER parameter value instead of 'OBJECT_MEMBER' (VARCHAR(10))
    '', -- put the USER parameter value instead of 'USER' (VARCHAR(10))
    '', -- put the JOB parameter value instead of 'JOB' (VARCHAR(26))
    ''  -- put the PROGRAM parameter value instead of 'PROGRAM' (VARCHAR(10))
    )) AS X

SQL Error [42704]: [SQL0204] DISPLAY_JOURNAL in QSYS2 type *N not found.
  [SQL0204] DISPLAY_JOURNAL in QSYS2 type *N not found.


显示日志仅从7.2版起可用

但是,您没有足够的选项来控制日志删除吗? 我让IBM来管理它们

日志接收者状态不能像数据库表中的状态字段那样更改。它是对象本身的状态。一旦接收器被更改,并且不再是连接的接收器,您就可以删除它们。但是,如果您试图删除一个尚未保存的接收器,它会给您一条这样的消息。您可以保存日志接收器,即使它已连接,但如果您不希望系统为您管理接收器,最好的办法是在更改接收器后保存它们,然后您可以随时删除接收器


因此,也许您应该将接收器保存为联机状态,然后您可以允许脚本删除它们。

我们使用DB2I进行测试,它不是真实的环境,因此我们根本不需要日志,当我们执行大量事务时,服务器存储将满,我们必须手动进行清理,这就是我们决定使用Qshell自动化清理的原因。在这种情况下,每晚备份前都要更改日志,备份日志,并删除旧的接收器。您甚至可以将它们保存到保存文件中,然后删除保存文件。这算是保存。检查了我的DB2i版本-我们使用7.1:(