OGG 两个故障案例处理

2024-05-16 02:36
文章标签 处理 案例 两个 ogg 故障

本文主要是介绍OGG 两个故障案例处理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

案例一:ogg 删除 REPLICAT进程遇OCI Error ORA-00942: table or view does not exist (status = 942)错误解决办法

一、问题描述

在测试OGG双向同步时,在目标端配置了应用进程,在启动应用进程时发现有报错,打算删除该应用进程,在执行delete REPLICAT rtb删除时报如下错误,导致无法删除。

ERROR: Could not delete DB checkpoint for REPLICAT RTB (OCI Error ORA-00942: table or view does not exist (status = 942). Deleting from checkpoint table ogg.chkpoint, group ‘RTB’, key 3883182186 (0xe774a86a), SQL ).

使用force也同样报错:

GGSCI (xsky-node4) 34> delete rtb force
ERROR: Could not delete DB checkpoint for REPLICAT RTB (OCI Error ORA-00942: table or view does not exist (status = 942). Deleting from checkpoint table ogg.chkpoint, group ‘RTB’, key 3883182186 (0xe774a86a), SQL ).

二、解决办法

通过查阅资料,添加 !符合可以删除

GGSCI (xsky-node4) 38> delete replicat rtb !
WARNING: Could not delete DB checkpoint for REPLICAT RTB (OCI Error ORA-00942: table or view does not exist (status = 942). Deleting from checkpoint table ogg.chkpoint, group ‘RTB’, key 3883182186 (0xe774a86a), SQL ).

GGSCI (xsky-node4) 39> info all

Program Status Group Lag at Chkpt Time Since Chkpt

MANAGER RUNNING
EXTRACT RUNNING DPA 00:00:00 00:00:04
EXTRACT RUNNING EXA 00:00:00 00:00:05

此时再没rtb那个replicat进程了。

真的没想到通过 添加 !感叹号可以删除,又学到一招,特此记录下。

案例二:OGG配置PUMP因绝对路径和相对路径导致进程PROCESS ABENDING问题记录

一、背景描述

这是最近遇到的一个案例,目前一套Oracle 11g RAC要下线,并将部分业务拆分迁移到其它生产库上,业务不允许停机迁移,于是就配置了OGG双向同步,在验证数据迁移配置OGG双向同步时,在源端配置PUMP,执行了如下命令 ADD RMTTRAIL ./dirdat/eb, EXTRACT dpb,并编辑了PUMP进程,在启动pump进程时报了如下错误,导致进程ABENDING

2023-06-08 09:51:19  INFO    OGG-00987  Oracle GoldenGate Command Interpreter for Oracle:  GGSCI command (oracle): start dpb.
2023-06-08 09:51:19  INFO    OGG-00963  Oracle GoldenGate Manager for Oracle, mgr.prm:  Command received from GGSCI on host [192.168.4.21]:28513 (START EXTRACT DPB ).
2023-06-08 09:51:19  INFO    OGG-00960  Oracle GoldenGate Manager for Oracle, mgr.prm:  Access granted (rule #6).
2023-06-08 09:51:19  INFO    OGG-00975  Oracle GoldenGate Manager for Oracle, mgr.prm:  EXTRACT DPB starting.
2023-06-08 09:51:19  INFO    OGG-00992  Oracle GoldenGate Capture for Oracle, dpb.prm:  EXTRACT DPB starting.
2023-06-08 09:51:19  INFO    OGG-03035  Oracle GoldenGate Capture for Oracle, dpb.prm:  Operating system character set identified as UTF-8. Locale: en_US, LC_ALL:.
2023-06-08 09:51:19  INFO    OGG-02696  Oracle GoldenGate Capture for Oracle, dpb.prm:  NON-ANSI SQL parameter syntax is used for parameter parsing.
2023-06-08 09:51:19  INFO    OGG-02095  Oracle GoldenGate Capture for Oracle, dpb.prm:  Successfully set environment variable NLS_LANG=AMERICAN_AMERICA.ZHS16GBK.
2023-06-08 09:51:19  INFO    OGG-01815  Oracle GoldenGate Capture for Oracle, dpb.prm:  Virtual Memory Facilities for: COManon alloc: mmap(MAP_ANON)  anon free: munmapfile alloc: mmap(MAP_SHARED)  file free: munmaptarget directories:/ogg/dirtmp.
2023-06-08 09:51:19  ERROR   OGG-01044  Oracle GoldenGate Capture for Oracle, dpb.prm:  The trail '/ogg/dirdat/rb' is not assigned to extract 'DPB'. Assign the trail to the extract with the command "ADD EXTTRAIL/RMTTRAIL /ogg/dirdat/rb, EXTRACT DPB".
2023-06-08 09:51:19  ERROR   OGG-01668  Oracle GoldenGate Capture for Oracle, dpb.prm:  PROCESS ABENDING.

二、原因分析

查看了PUMP的配置文件,应该是跟配置文件中RMTTRAIL后使用了绝对路径,如下所示:

GGSCI (host501) 10> view param dpbEXTRACT dpb
SETENV(NLS_LANG=AMERICAN_AMERICA.ZHS16GBK)
PASSTHRU
USERID ogg, PASSWORD AACAAAAAAAAAAADAHBLDCCIIOIRFNEPB, ENCRYPTKEY default
RMTHOST 192.168.xxx.xxx, MGRPORT 8701
RMTTRAIL /ogg/dirdat/eb
REPORTCOUNT EVERY 10 MINUTES, RATE
NUMFILES 5000
DYNAMICRESOLUTION
--AND TABLE AND SEQUENCE

而我为data pump指定远程trail文件地址,是采用了相对路径,./dirdat/eb

三、解决办法

通过delete dpb删除该pump进程,然后执行ADD RMTTRAIL /ogg/dirdat/rb, EXTRACT dpb,PUMP进程的配置文件未修改,重新启动该pump进程,这次正常启动,不再ABENDING.

之前部署OGG也遇到了很多问题,但这是第一次遇因路径产生故障的问题,特整理记录下来。

这篇关于OGG 两个故障案例处理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/993628

相关文章

SpringBoot分段处理List集合多线程批量插入数据方式

《SpringBoot分段处理List集合多线程批量插入数据方式》文章介绍如何处理大数据量List批量插入数据库的优化方案:通过拆分List并分配独立线程处理,结合Spring线程池与异步方法提升效率... 目录项目场景解决方案1.实体类2.Mapper3.spring容器注入线程池bejsan对象4.创建

PHP轻松处理千万行数据的方法详解

《PHP轻松处理千万行数据的方法详解》说到处理大数据集,PHP通常不是第一个想到的语言,但如果你曾经需要处理数百万行数据而不让服务器崩溃或内存耗尽,你就会知道PHP用对了工具有多强大,下面小编就... 目录问题的本质php 中的数据流处理:为什么必不可少生成器:内存高效的迭代方式流量控制:避免系统过载一次性

MyBatis分页查询实战案例完整流程

《MyBatis分页查询实战案例完整流程》MyBatis是一个强大的Java持久层框架,支持自定义SQL和高级映射,本案例以员工工资信息管理为例,详细讲解如何在IDEA中使用MyBatis结合Page... 目录1. MyBATis框架简介2. 分页查询原理与应用场景2.1 分页查询的基本原理2.1.1 分

Python实现批量CSV转Excel的高性能处理方案

《Python实现批量CSV转Excel的高性能处理方案》在日常办公中,我们经常需要将CSV格式的数据转换为Excel文件,本文将介绍一个基于Python的高性能解决方案,感兴趣的小伙伴可以跟随小编一... 目录一、场景需求二、技术方案三、核心代码四、批量处理方案五、性能优化六、使用示例完整代码七、小结一、

Python中 try / except / else / finally 异常处理方法详解

《Python中try/except/else/finally异常处理方法详解》:本文主要介绍Python中try/except/else/finally异常处理方法的相关资料,涵... 目录1. 基本结构2. 各部分的作用tryexceptelsefinally3. 执行流程总结4. 常见用法(1)多个e

PHP应用中处理限流和API节流的最佳实践

《PHP应用中处理限流和API节流的最佳实践》限流和API节流对于确保Web应用程序的可靠性、安全性和可扩展性至关重要,本文将详细介绍PHP应用中处理限流和API节流的最佳实践,下面就来和小编一起学习... 目录限流的重要性在 php 中实施限流的最佳实践使用集中式存储进行状态管理(如 Redis)采用滑动

MyBatis-plus处理存储json数据过程

《MyBatis-plus处理存储json数据过程》文章介绍MyBatis-Plus3.4.21处理对象与集合的差异:对象可用内置Handler配合autoResultMap,集合需自定义处理器继承F... 目录1、如果是对象2、如果需要转换的是List集合总结对象和集合分两种情况处理,目前我用的MP的版本

JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法

《JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法》:本文主要介绍JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法,每种方法结合实例代码给大家介绍的非常... 目录引言:为什么"相等"判断如此重要?方法1:使用some()+includes()(适合小数组)方法2

深度解析Java @Serial 注解及常见错误案例

《深度解析Java@Serial注解及常见错误案例》Java14引入@Serial注解,用于编译时校验序列化成员,替代传统方式解决运行时错误,适用于Serializable类的方法/字段,需注意签... 目录Java @Serial 注解深度解析1. 注解本质2. 核心作用(1) 主要用途(2) 适用位置3

Python自动化处理PDF文档的操作完整指南

《Python自动化处理PDF文档的操作完整指南》在办公自动化中,PDF文档处理是一项常见需求,本文将介绍如何使用Python实现PDF文档的自动化处理,感兴趣的小伙伴可以跟随小编一起学习一下... 目录使用pymupdf读写PDF文件基本概念安装pymupdf提取文本内容提取图像添加水印使用pdfplum