GoldenGate自动归档discard文件
作者:互联网
1.背景
GoldenGate重要的日志文件有2个:ggserr.log和discard文件。
ggserr.log记录重要的日志,如进程启停、进程失败abend及响应ggsci命令的响应输出。
discard文件,是丢弃文件,在备机端,同步环境没有问题的前提下,在执行具体某个sql时失败,会把执行失败的sql放入到discard文件。
由此看出,discard文件很重要,是运维发现哪些表主从不一致的重要线索。
2.当前环境的问题
当前设置如下:
discardfile ./dirrpt/rept01.dsc , purge,megabytes 100
会出现2个问题:
discard文件太小:只有200M,持续运行N天后,会满。
discard文件会被覆盖:尤其重启replicat进程后,文件会被清空。
3.解决方法
修改控制参数,相关参数包括:
3.1.追加还是清空
指定discard文件名时一起设定为append追加。并调整最大大小。
Syntax DISCARDFILE <file name>
[, APPEND | PURGE]
[, MAXBYTES <n> | MEGABYTES <n>]
同时,如果文件大小超限后,进程就会退出,顾大小尽量设大。
To set an upper limit for the size of the file, use either the MAXBYTESor MEGABYTESoption. If the specified size is exceeded, the process will abend.
3.2. 定期归档
使用参数:discardrollover
本参数指定个时点,当到达时点时,自动归档discard文件。归档文件的格式是,<group name><n>.<extension>。
3.3.修改后
discardfile ./dirrpt/rept01.dsc , append,megabytes 2048
discardrollover at 05:30
经过观察,
确实在每天的05:30,自动创建个新的discard文件。
最新的归档总是从0号开始。假设现在已有2个归档文件,rept010.dsc\rept011.dsc;新归档后,已有的更名为rept010.dsc->rept011.dsc,rept011.dsc->rept012.dsc,
新的归档文件名为rept010.dec。
发现一个问题,虽然新生成了文件,但文件整个生命周期内,没有任何数据。
对比之前的内容,至少也该有类似trail文件切换的系想你;还有,中间有过4天数据不同步,肯定有无法更新、或删除的记录才对。
具体看handlecollisions参数介绍
标签:文件,rept011,rept010,归档,discard,GoldenGate,dsc 来源: https://www.cnblogs.com/chendian0/p/14209809.html