oracle 长事务等待,Oracle GoldenGate 常见问题:长事务处理

长事务的影响

OGG是基于事务级的实时复制工具,也就是说OGG只复制已提交的事务,在遇到事务的commit或rollback之前,它会将每个事务的操作存储在称为cache的托管虚拟内存池中。内存再大也有不够用的时候,当事务数据超过一定的阈值或者当前空闲内存无法满足分配请求时,OGG进程会将最少使用的old buffer swap 到磁盘上的dirtmp中。

当OGG遇到长事务时,如果extract进程因某种原因终止,原有的文件系统上的临时数据都将被删除,重启后会根据recoverycheckpoint查找最早开始进行的长事务起始点所在的归档日志进行恢复,如果重启时发现所需归档被删除,则extract进程将无法重启,只能通过恢复归档或初始化解决。即使归档存在,重启后进行recovery会很大程度影响OGG 的性能。

长事务的处理

1.监控ggserr.log 中的长事务警告,可以通过配置extract 进程参数warnlongtrans 调整警告频率

2.监控数据库中的长事务

selectstart_timefrom gv$transaction;

3.ggsci提供了如下命令来处理未提交事务

send extract ,showtrans查看正在处理的未提交事务

send extract ,skiptrans跳过事务(不建议)

send extract ,forcetrans强制认为事务已经提交(不建议)

建议所有的事务提交或回滚操作都在数据库中进行

4.说明:在OGG11g中,extract提供了BR参数可以设置每隔一段时间(默认4小时)将长交易缓存及BR检查点到本地硬盘(默认dirtmp目录下),因此extract只要不停止一般需要的归档日志不超过8个小时(极限情况)。但是如果extract停掉后,便无法再自动缓存长交易,需要的归档日志就会依赖于停机时间变长。

相关阅读:

0b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值