代码改变世界

goldengate for sqlserver 日志暴涨的解决办法

2012-08-07 15:49  java环境变量  阅读(536)  评论(0编辑  收藏  举报

goldengate for sqlserver  日志暴涨的解决办法


gg for sqlserver 2008 R2 开启后,sqlserver的日志会出现暴涨的情况,解决办法如下:

1.先确认是否数据库设置问题导致

如:
1)查看ggerror中,是否有报错!

2)然后确认log备份使用的是log backup同时没有使用压缩.

3)数据库恢复模式


2.在gg添加表的扩展日志后,确认agent中是否对应的CDC capture禁用

add trandata dbo.tbl01

开启扩展日志后,需要将agent中对应的CDC capture禁用.

 

3.确认参数extract参数文件是否使用MANAGESECONDARYTRUNCATIONPOINT


TRANLOGOPTIONS MANAGESECONDARYTRUNCATIONPOINT

 


4.如果上述方法都配置正确,sqlserver日志依然暴涨!需要重新配置下GG:

******做如下操作前,请确认GG已经读取完当前日志.

--4.1删除扩展日志
delete trandata dbo.tbl01

 

---4.2删除抽取和传送

delete extract extrate
delete exttrail S:\gg\dirdat\rt
delete EXTRACT pumprate
delete rmttrail s:\gg\dirdat\rt


DBCC OPENTRAN
go

EXECUTE sp_repltrans
go

--4.3注意:使用sp_repldone将未分发的日志重置为0,否则可能导致重新配置也无法解决日志暴涨

EXEC sp_repldone @xactid = NULL, @xact_segno = NULL, @numtrans = 0,     @time = 0, @reset = 1
go


--4.4禁用数据库的CDC
use test
go
EXEC sys.sp_cdc_disable_db
go

--4.5重新配置

然后重新添加扩展日志、抽取和传送即可.