【问题标题】:Primary and Secondary log files in MQMQ 中的 Primary 和 Secondary 日志文件
【发布时间】:2014-04-25 20:40:13
【问题描述】:

Source

LogPrimaryFiles=3|2-254 (Windows)|2-510(UNIX 系统)

创建队列管理器时分配的日志文件。


LogSecondaryFiles=2|1-253 (Windows)|1-509(UNIX 系统)

主文件耗尽时分配的日志文件。


据我了解,这些日志文件是事务日志的一部分。

现在,如果我要使用以下设置创建队列管理器,

LogPrimaryFiles=2  
LogSecondaryFiles=8 
LogFilePages=16384 
LogType=CIRCULAR 
LogBufferPages=0 
LogPath=/var/mqm/log/QMGRA/ 
LogWriteIntegrity=TripleWrite

我想知道8个二级日志文件用完后会发生什么,即所有主二级日志文件都被填满的场景。

接下来,如果我要使用这些设置,

LogPrimaryFiles=2  
LogSecondaryFiles=8 
LogFilePages=16384 
LogType=LINEAR
LogBufferPages=0 
LogPath=/var/mqm/log/QMGRA/ 
LogWriteIntegrity=TripleWrite

在这种情况下,我想知道之后会发生什么,

  1. 所有主日志文件都已用尽。
  2. 所有辅助日志文件已用尽。

另外,当需要恢复队列管理器时,需要重新启动队列管理器。队列管理器将从事务日志中定义的最后一个同步点恢复。但是,我对这个同步点的位置感到困惑。它是在主日志文件还是辅助日志文件中,或者它可能存在于它们中的任何一个中?

【问题讨论】:

    标签: ibm-mq


    【解决方案1】:

    对于线性或循环日志,一旦主要和次要范围被同步点下的消息填充,QMgr 将开始回滚事务以释放一些日志空间。有一种误解认为线性日志可以在同步点下处理任意数量的消息,因为它们不会被重用。

    使用线性日志,所有持久消息都被捕获在日志中,并且同步点下的消息必须适合主要和次要范围。

    使用循环日志,日志中只捕获同步点下的消息。

    最后一个一致性点是总是最旧的活动日志范围。请参阅信息中心部分Determining superfluous log files 了解更多详情。另外,请查看Mission:Messaging: Circular logs vs. linear logs 以获得更深入的解释。

    【讨论】:

      猜你喜欢
      • 2019-10-21
      • 1970-01-01
      • 1970-01-01
      • 2020-12-08
      • 2012-04-16
      • 1970-01-01
      • 2013-12-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多