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

相关文章

Java 中的 @SneakyThrows 注解使用方法(简化异常处理的利与弊)

《Java中的@SneakyThrows注解使用方法(简化异常处理的利与弊)》为了简化异常处理,Lombok提供了一个强大的注解@SneakyThrows,本文将详细介绍@SneakyThro... 目录1. @SneakyThrows 简介 1.1 什么是 Lombok?2. @SneakyThrows

在 Spring Boot 中实现异常处理最佳实践

《在SpringBoot中实现异常处理最佳实践》本文介绍如何在SpringBoot中实现异常处理,涵盖核心概念、实现方法、与先前查询的集成、性能分析、常见问题和最佳实践,感兴趣的朋友一起看看吧... 目录一、Spring Boot 异常处理的背景与核心概念1.1 为什么需要异常处理?1.2 Spring B

python处理带有时区的日期和时间数据

《python处理带有时区的日期和时间数据》这篇文章主要为大家详细介绍了如何在Python中使用pytz库处理时区信息,包括获取当前UTC时间,转换为特定时区等,有需要的小伙伴可以参考一下... 目录时区基本信息python datetime使用timezonepandas处理时区数据知识延展时区基本信息

Java Stream流使用案例深入详解

《JavaStream流使用案例深入详解》:本文主要介绍JavaStream流使用案例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录前言1. Lambda1.1 语法1.2 没参数只有一条语句或者多条语句1.3 一个参数只有一条语句或者多

MySQL 中的 JSON 查询案例详解

《MySQL中的JSON查询案例详解》:本文主要介绍MySQL的JSON查询的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录mysql 的 jsON 路径格式基本结构路径组件详解特殊语法元素实际示例简单路径复杂路径简写操作符注意MySQL 的 J

Python Transformers库(NLP处理库)案例代码讲解

《PythonTransformers库(NLP处理库)案例代码讲解》本文介绍transformers库的全面讲解,包含基础知识、高级用法、案例代码及学习路径,内容经过组织,适合不同阶段的学习者,对... 目录一、基础知识1. Transformers 库简介2. 安装与环境配置3. 快速上手示例二、核心模

一文详解Java异常处理你都了解哪些知识

《一文详解Java异常处理你都了解哪些知识》:本文主要介绍Java异常处理的相关资料,包括异常的分类、捕获和处理异常的语法、常见的异常类型以及自定义异常的实现,文中通过代码介绍的非常详细,需要的朋... 目录前言一、什么是异常二、异常的分类2.1 受检异常2.2 非受检异常三、异常处理的语法3.1 try-

Python使用getopt处理命令行参数示例解析(最佳实践)

《Python使用getopt处理命令行参数示例解析(最佳实践)》getopt模块是Python标准库中一个简单但强大的命令行参数处理工具,它特别适合那些需要快速实现基本命令行参数解析的场景,或者需要... 目录为什么需要处理命令行参数?getopt模块基础实际应用示例与其他参数处理方式的比较常见问http

Java Response返回值的最佳处理方案

《JavaResponse返回值的最佳处理方案》在开发Web应用程序时,我们经常需要通过HTTP请求从服务器获取响应数据,这些数据可以是JSON、XML、甚至是文件,本篇文章将详细解析Java中处理... 目录摘要概述核心问题:关键技术点:源码解析示例 1:使用HttpURLConnection获取Resp

Java中Switch Case多个条件处理方法举例

《Java中SwitchCase多个条件处理方法举例》Java中switch语句用于根据变量值执行不同代码块,适用于多个条件的处理,:本文主要介绍Java中SwitchCase多个条件处理的相... 目录前言基本语法处理多个条件示例1:合并相同代码的多个case示例2:通过字符串合并多个case进阶用法使用