环境描述:
系 统:HP-UX
数 据 库:oracle 11gR2 11.2.0.4.0
OGG版本:11.2.1.0.33
故障描述:
mgr配置的purgeoldextracts删除策略失效,源端有几个一个失效的trail文件一直未被删除。
故障原因:
源端的抽取进程产生的trail文件和对于的投递进程在目标段产生的trail文件同名 都为./dirdat/aa。mgr进程按照他们最小的sequence号来保证删除源端trail文件的安全被删除。
解决思路:改变源端抽取进程生成的trail文件。
操作步骤:
(1)停止要修改的进程(进程名以“extname”为例)。
GGSCI>stop extname
(2)给extname添加新的trail文件
GGSCI>add exttrail ./dirdat/nw extract extname,megabytes 100
(3)修改extname参数文件内的trail文件的配置信息
(4)启动extname
(5)记录对应投递进程的进程信息,重点记录current write position的sequence#
GGSCI>send pumpname status
(6)停止对应的投递进程
GGSCI>stop pumpname
(7)重制pumpname进程抓取的新设置的sourcetrailfile,执行后确认是否成功
GGSCI>alter extract pumpname,exttrailsource ./dirdat/nw
GGSCI>info pumpname detail
(8)删除旧的extractsourcetrailfile,⚠️此动作同时会删除pumpname进程的remotetrailfile属性,因此删除前要执行步骤(5)。
GGSCI>delete exttrai 旧的sourcetrailfile
(9)重置pumpname进程原来的remotetrail属性,使其sequence#比步骤(5)的数字+1
GGSCI>add rmttrail 原来的remotepumptrailfile,extract pumpname,megabytes 100,seqno sequence#比步骤(5)的数字+1
(10)启动 pumpname进程。
反思总结故障发生的俩个必要原因:
1.sourcetrailfile和对应的投递进程remotetrail同名。
2.remotetrail的sequence#不大于sourcetrailfile的sequence#。