http://blog.chinaunix.net/uid-26190993-id-3434074.html

在OGG运行过程中,通常会因为各种各样的原因导致容灾端的REPLICAT进程ABENDED掉,这个时候需要通过分析ggserr.log , DISCARDFILE , REPLICAT REPORT ,以及借助 Logdump 等工具去定位错误。在具体的应用场景下,通过分析排查,有些事务是可以不在容灾端去应用的,下面的例子是今天在生产配置OGG遇到的一个问题。

由于在同步过程中,从主库传过来的列队中包含创建OGG用户下某张表的一个事务,导致REPLICAT进程ABENDED,经过分析,该表是在主库用于DDL复制的,并不需要在备库应用,确定不会影响数据一致性的前提下决定跳过次事务:
1,定位REPLICAT进程当前事务所在列队文件及RBA:

点击(此处)折叠或打开

  1. GGSCI (sv890n01) 46> info rads_1
  2. REPLICAT RADS_1 Last Started 2012-12-08 16:29 Status ABENDED
  3. Checkpoint Lag 02:23:36 (updated 00:01:38 ago)
  4. Log Read Checkpoint File ./dirdat/pa000002
  5. 2012-12-08 14:05:51.970013 RBA 77698825

2,由于在列队中相邻两个事务的 RBA 并不是简单的 +1 关系,所以下一步需要定位到下个事务的RBA,在这里需要借助 logdump 工具。
打开列队文件:

点击(此处)折叠或打开

  1. Logdump 10 >open ./dirdat/pa000002
  2. Current LogTrail is /u01/app/oracle/oradata/ogg/dirdat/pa000002

定位到指定的RBA位置:

点击(此处)折叠或打开

  1. Logdump 11 >pos 77698825
  2. Reading forward from RBA 77698825

查看当前事务详细信息,在这里可以看到DDL/DML操作类型,RBA,对象名等一些相关信息:

点击(此处)折叠或打开

  1. Logdump 12 >n
  2. 2012/12/08 14:05:52.970.013 DDLOP Len 1221 RBA 77698825
  3. Name:
  4. After Image: Partition 0 G s
  5. 2c43 353d 2735 3730 3727 2c2c 4237 3d27 3537 3037 | ,C5='5707',,B7='5707
  6. 272c 2c42 323d 2735 3631 3330 3027 2c2c 4233 3d27 | ',,B2='561300',,B3='
  7. 4f47 4727 2c2c 4234 3d27 4442 4d53 5f54 4142 434f | OGG',,B4='DBMS_TABCO
  8. 4d50 5f54 454d 505f 554e 434d 5027 2c2c 4331 323d | MP_TEMP_UNCMP',,C12=
  9. 2727 2c2c 4331 333d 2727 2c2c 4235 3d27 5441 424c | '',,C13='',,B5='TABL
  10. 4527 2c2c 4236 3d27 4452 4f50 272c 2c42 383d 274f | E',,B6='DROP',,B8='O
  11. 4747 2e47 4753 5f44 444c 5f48 4953 5427 2c2c 4239 | GG.GGS_DDL_HIST',,B9

查看下一个事务信息:

点击(此处)折叠或打开

  1. Logdump 13 >n
  2. 2012/12/08 14:05:52.970.013 Insert Len 370 RBA 77700210
  3. Name: DATAGATE.TB_DOWNLOAD_LOG
  4. After Image: Partition 4 G s
  5. 0000 0009 0000 0005 7274 7231 3100 0100 0900 0000 | ........rtr11.......
  6. 0531 3036 3034 0002 001d 0000 0019 5943 3159 3037 | .10604........YC1Y07
  7. 315f 3132 3939 3537 3833 3534 3932 342e 786d 6c00 | 1_1299578354924.xml.
  8. 0300 0300 0030 0004 00bf 0000 00bb 6874 7470 3a2f | .....0........http:/
  9. 2f64 6174 6167 6174 652e 6368 696e 6162 6f6e 642e | /datagate.chinabond.
  10. 636f 6d2e 636e 2f64 6174 6167 6174 652f 6469 7370 | com.cn/datagate/disp
  11. 6174 6368 3f66 756e 635f 6964 3d32 3031 3126 7374 | atch?func_id=2011&st

至此已经定位到下一个事务的RBA。

3,在GGSCI中通过重新指定REPLICAT进程的当前RBA以跳过当前事务

点击(此处)折叠或打开

  1. GGSCI (sv890n01) 47> alter replicat rads_1,extrba 77700210
  2. REPLICAT altered.
  3. GGSCI (sv890n01) 48> start rads_1
  4. Sending START request to MANAGER ...
  5. REPLICAT RADS_1 starting

来自为知笔记(Wiz)

转载于:https://www.cnblogs.com/skyrim/p/7456193.html

OGG 跳过事务(转)相关推荐

  1. OGG跳过事务 logdump FORCETRANS begin now

    本文主要讲述: extract 时跳过事务 replicate时跳过事务 知识重点:OGG中保存的也是before image和after image,这也是block中行的修改,和RBA UBA中一 ...

  2. GTID 模式 - 通过跳过事务解决主从故障

    文章目录 一.前言 二.操作流程 1. 获取最后一个 GTID 操作 2. 跳过一个事务 三.案例 1. 问题描述 2. 原因分析 3. 处理过程 一.前言 很多场景下我们需要跳过一个事务来修复主从关 ...

  3. mysql 跳过事务 gtid

    企业生产场景mysql主从复制故障原因 企业生产场景mysql主从复制故障原因 实验一:       目的:解决主从不同步(本例中sql线程出现问题)       方法:模拟故障场景          ...

  4. OGG抓取事务经常会用到的参数

    OGG的事务跟踪还是非常好用的,可以获取到很多额外的事务信息. 例如: 抽取进程配置参数在table schema_name.testogg后面追加 table ext_user.tesogg  , ...

  5. mysql slave lock 跳过_处理 MySQL 因为 SLAVE 崩溃导致需要手动跳过 GTID 的问题 | 关于 GTID...

    今天发生了与之前某篇博客相似的问题,有同学在不同步的 binlog 库中使用语句 database.table 命令对表进行 drop 导致 master 丢弃该表但是从库并未能同步到该操作.并且后续 ...

  6. 火狐浏览器表单不跳转_坑爹火狐浏览器会记录表单数据,导致服务器控件点击事件出bug...

    尝试一下代码高亮..成功的话明天写一篇blog using System; using System.Collections; using UnityEngine; public class Time ...

  7. Slave_SQL线程异常终止处理之跳过错误

    手动跳过1个或更多个事务 /* 传统点位模式复制 */ SQL>set global sql_slave_skip_counter=1; SQL>start sql_thread;/* G ...

  8. SpringBoot中事务执行原理分析(一)

    关联博文: SpringBoot中事务执行原理分析(一) SpringBoot中事务执行原理分析(二) SpringBoot中事务执行原理分析(三) SpringBoot中事务执行原理分析(四) Sp ...

  9. table类型数据提交_OGG数据同步异常问题总结

    [事件背景] 大家应该还记得上次本大湿分享过一遍文章<OceanBase数据同步挖掘日志慢解决方案>该方案引入OracleGoldenGate(以下简称OGG)进行数据同步.完美地解决了因 ...

最新文章

  1. C语言 cgi(2)
  2. k-means-algorithm
  3. SpringBoot(2)之自定义配置
  4. vectorPoint points未声明的标识符
  5. 15、Java Swing JSlider:滑块组件
  6. dll 源码_重新编译mono——Android动态更新dll
  7. 学web前端开发有前途吗
  8. java 使用gzip压缩和解压 传输文件必备
  9. MySQL:too many connections
  10. 京东云无线宝AX6600新品发布 预售价799元
  11. Raki的读paper小记:NATURAL LANGUAGE INFERENCE OVER INTERACTION SPACE
  12. 开启阿里云linux下的pure-ftpd被动模式,解决flashfxp可连接但无法下载的问题
  13. 重装系统时的硬盘格式化
  14. python去除图片水印api,python去除图片水印(部分可)
  15. 重阳节,让我们祝天下的老年人生活幸福快乐。
  16. ffmpeg命令行,单张图片,音频合成视频
  17. 万卷书 - 大家来写作 [Everybody Writes]
  18. 华三RIF堆叠实验配置
  19. CSS的三种使用方法。 行内样式: 内嵌式: 外部式:
  20. Vue项目开发中优雅的切换服务端ip

热门文章

  1. iBatis报java.lang.RuntimeException: Error setting property错误
  2. 一天一种设计模式(一)------观察者模式
  3. Ubuntu 出现apt-get: Package has no installation candidate问题
  4. C#基础练习(时间的三连击)
  5. PetShop之表示层设计(转载)
  6. php 的包管理,php composer包管理器
  7. linux存储--dup和dup2函数解析(十八)
  8. go context包的WithTimeout和WithCancel的使用
  9. java 游戏视频_Java swing实现的小游戏24点游戏源码附带视频指导教程
  10. android 深度定制,深度定制安卓是什么