从已知点启动Q Capture 需要从DB2 log获取LSN

1853阅读 0评论2010-10-26 thaiguou
分类:

问题描述: 什么样的DB2工具可以从DB2恢复日志里获取日志序列号(LSN)用来以WARMNS模式启动Q Capture?

原因:当读日至时遇到问题。比如遇到 SQL2656N 和 SQL2650N错误。

解答:大多数情况下,你可以用ASN7109I信息里包含的LSN值来启动Q Capture.参考文档:

在极少数情况下,你可能需要从DB2日志里寻找LSN值。
如果你需要用WARMNS模式从已知LSN启动Q Capture, 可以用db2pdlog 功能。这个工具可以提供给定的DB2日志里开始LSN的真实记录piStartLSN。
你可以把日志发送给DB2支持来用这个工具获取有效的开始LSN.
你不能用db2flsn工具的-lsnrange选项或者db2pdlog的-lsnrange选项来获得piStartLSN.
piStartLSN是开始日志的序列号用来指定读取log的相应比特单元。这个值必须是实际的日志记录的开始。
关于更多的细节,请参看DB2信息中心的"db2ReadLogNoConn API - Read the database logs without a database connection"

只要你确定了LSN,你可以启动Q Capture:

asnqcap capture_server=server_name capture_schema=schema_name capture_path=path lsn=xxxx:xxxx:xxxx:xxxx:xxxx maxcmtseq=0000:0000:0000:0000:0000

其中 xxxx:xxxx:xxxx:xxxx:xxxx 是从db2日志获取的LSN 值。如果LSN 是12 个数字, 那么就在左边填充0。

例如,如果LSN是 2CEF:1ADE:9E0A 你可以启动QCapture
LSN=0000:0000: 2CEF:1ADE:9E0A

 

上一篇:系统死机之后不能重起Apply程序,遇到ASN1049S信息
下一篇:创建一个预定集,并添加一个目标表为Oracle的成员