OGG-00446 分析与解决

1 00446

   OGG 的一些错误编号,包含了很多种不同的原因。00446 就是这样的一种,不同的原因有不同的提示。本文包含两种:
  

  • Missing filename opening checkpoint file

  • could not find archived log

下面看分析与解决方法。

1.1 Missing filename opening checkpoint file

1.1.1 错误信息

2019-07-02T23:26:17.998+0800  ERROR   OGG-00446  Oracle GoldenGate Delivery, xmsys.prm:  Missing filename opening checkpoint file.
2019-07-02T23:26:17.999+0800 ERROR OGG-01668 Oracle GoldenGate Delivery, xmsys.prm: PROCESS ABENDING.

1.1.2 分析

出现此错误,原因是参数配置与命令不匹配。比如from file方式的数据应用进程,如果使用ggsci命令start命令 来启动, 则会出现这种错误。下面是两则安全,根本原因都是命令与参数配置不匹配,一种是初始化,一种是实时 应用。

  1. 案例1->初始化

    • 参数配置
      以下配置为一例 ogg for kafka 的 From File 方式初始化应用进程的配置。

        SPECIALRUN    -- 此行为重点
      END RUNTIME
      SETENV(nls_lang="AMERICAN_AMERICA.ZHS16GBK")
      targetdb libfile libggjava.so set property=dirprm/xmins.props
      EXTFILE dirdat/ii
      reportcount every 1 minutes , rate
      grouptransops 10000
    • 启动命令

      start initsp
      
    • 日志

        .........
      2019-07-02T23:26:15.409+0800 INFO OGG-01360 Oracle GoldenGate Delivery, xmsys.prm: REPLICAT is running in Special Run mode.
      2019-07-02T23:26:15.615+0800 INFO OGG-15052 Oracle GoldenGate Delivery, xmsys.prm: Using Java class path: ggjava/ggjava.jar:ggjava/resources/lib/optional/log4j-api-2.9.1.jar:ggjava/resources/lib/optional/log4j-core-2.9.1.jar:ggjava/resources/lib/optional/log4j-slf4j-impl-2.9.1.jar.
      2019-07-02T23:26:17.988+0800 INFO OGG-01815 Oracle GoldenGate Delivery, xmsys.prm: Virtual Memory Facilities for: COM
      anon alloc: mmap(MAP_ANON) anon free: munmap
      file alloc: mmap(MAP_SHARED) file free: munmap
      target directories:
      /home/ogg/dirtmp.
      2019-07-02T23:26:17.998+0800 ERROR OGG-00446 Oracle GoldenGate Delivery, xmsys.prm: Missing filename opening checkpoint file.
      2019-07-02T23:26:17.999+0800 ERROR OGG-01668 Oracle GoldenGate Delivery, xmsys.prm: PROCESS ABENDING.
    • 解决 通过操作系统命令 replicat 执行初始化:

      $OGG_HOME/replicat paramfile $OGG_HOME/dirprm/xmsys.prm
      
  2. 案例2->实时抽取
    • 参数配置

        passthru
      rmthost 192.168.153.129, mgrport 7809
      rmttrail /u02/ggs/dirdat/td
      gettruncates
      table scott.*;
      sequence scott.*;
    • 分析 第一行应为:

      extract test
      

1.2 could not find archived log

 

1.2.1 错误信息

在ggserr.log 中发现如下错误:

2019-05-31t10:56:53.629+0800  error   ogg-00446  oracle goldengate capture for oracle, extxmdev.prm:  could not find archived log for sequence 2649 thread 1 under default destinations sql <select  name    from v$archived_log   where sequence# = :ora_seq_no and         thread# = :ora_thread and         resetlogs_id = :ora_resetlog_id and         archived = 'yes' and         deleted = 'no' and         name not like '+%'         and standby_dest = 'no' >, error retrieving redo file name for sequence 2649, archived = 1, use_alternate = 0not able to establish initial position for sequence 2649, rba 13816848.
2019-05-31t10:56:53.641+0800 error ogg-01668 oracle goldengate capture for oracle, extxmdev.prm: process abending.

1.2.2 分析

从错误信息提示来看,是归档日志找不到引起的中断。经查看归档日志确实不存在。 已被物理删除。且没有备份。

数据不重要

此时可以修改extract 的起始值,跳过缺失的归档文件,这在测试和开发环境 中应用较多。 首先查看可用归档:

select sequence# ,first_change#, next_change# ,deleted,applied,status from v$archived_log;

 sequence# first_change# next_change# del applied   s
---------- ------------- ------------ --- --------- -
3759 16360310 16401138 yes no a
3760 16401138 16419033 no no a

从上面的查询结果来看,3759号归档已被删除,最新可用归档是3760. 对应最早的 scn号是16401138. 将extract 进程的scn 值调整至16401138:

alter extrace extxmdev, scn 16401138
start ext extxmdev
数据重要
此时需要从备份中恢复相应的归档文件

Author: halberd.lee

Created: 2019-07-15 Mon 00:16

Validate

OGG-00446 分析与解决的更多相关文章

  1. Mybatis关联查询和数据库不一致问题分析与解决

    Mybatis关联查询和数据库不一致问题分析与解决 本文的前提是,确定sql语句没有问题,确定在数据库中使用sql和项目中结果不一致. 在使用SpringMVC+Mybatis做多表关联时候,发现也不 ...

  2. C#中异常:“The type initializer to throw an exception(类型初始值设定项引发异常)”的简单分析与解决方法

    对于C#中异常:“The type initializer to throw an exception(类型初始值设定项引发异常)”的简单分析,目前本人分析两种情况,如下: 情况一: 借鉴麒麟.NET ...

  3. 启动Tomcat一闪而过——分析及解决过程

    启动Tomcat一闪而过--分析及解决过程 嗯,昨天将有关JDK的知识稍微整理了一下,现在稍微整理一下有关Tomcat的! 1:Tomcat是什么? Tomcat是当今世界上使用最为广泛的.开源免费的 ...

  4. SQL Server2005索引碎片分析和解决方法

    SQL Server2005索引碎片分析和解决方法 本文作者(郑贤娴),请您在阅读本文时尊重作者版权. 摘要: SQL Server,为了反应数据的更新,需要维护表上的索引,因而这些索引会形成碎片.根 ...

  5. JavaScript中的ParseInt("08")和“09”返回0的原因分析及解决办法

    今天在程序中出现一个bugger ,调试了好久,最后才发现,原来是这个问题. 做了一个实验: alert(parseInt("01")),当这个里面的值为01====>07时 ...

  6. mybatis异常:Improper inline parameter map format. Should be: #{propName,attr1=val1,attr2=val2}问题分析及解决

    转载自:http://blog.csdn.net/jackpk/article/details/44158701 mybatis异常:Improper inline parameter map for ...

  7. php中session_start()相关问题分析与解决办法

    介绍下,在php中使用session时遇到的一些问题,与相关解决方法.1.错误提示Warning: Cannot send session cookie - headers already sentW ...

  8. 左右c++与java中国的垃圾问题的分析与解决

    左右c++与java中国的垃圾问题的分析与解决 DionysosLai(906391500@qq.com)  2014/8/1 问题分析: 之所以会出现中文乱码问题,归根结底在于中文的编码与英文的编码 ...

  9. 文《左右c++与java中国的垃圾问题的分析与解决》一bug分析

    文<左右c++与java中国的垃圾问题的分析与解决>一bug分析 DionysosLai(906391500@qq.com) 2014/10/21 在前几篇一博客<关于c++与jav ...

随机推荐

  1. TCP坚持定时器

    窗口探查(window probe) 当接收方TCP缓冲区没有剩余空间后,在ACK中会通知发送方window=0,此时发送方就暂停发送数据.当接收方TCP缓冲区又有空间后,会再次发送一个ACK,告知其 ...

  2. python基础编程: 编码补充、文件操作、集合、函数参数、函数递归、二分查找、匿名函数与高阶函数

    目录: 编码的补充 文件操作 集合 函数的参数 函数的递归 匿名函数与高阶函数 二分查找示例 一.编码的补充: 在python程序中,首行一般为:#-*- coding:utf-8 -*-,就是告诉p ...

  3. springboot配置对jsp页面的解析支持

    pom.xml文件配置依赖信息 <!--引入Spring Boot内嵌的Tomcat对JSP的解析包,不加解析不了jsp页面--> <dependency> <group ...

  4. 分析bug是前端还是后端的

    如何分析一个bug是前端还是后端的? 平常提bug的时候,前端开发和后端开发总是扯皮,不承认是对方的bug 这种情况很容易判断,先抓包看请求报文,对着接口文档,看请求报文有没问题,有问题就是前端发的数 ...

  5. 第三方库-正则re

    Python正则表达式里的单行re.S和多行re.M模式 Python 的re模块内置函数几乎都有一个flags参数,以位运算的方式将多个标志位相加.其中有两个模式:单行(re.DOTALL, 或者r ...

  6. 《Python基础教程》第三章:使用字符串

    find方法可以在一个较长的字符串中查找子字符串.它返回子串所在位置的最左端索引.如果没有找到则返回-1 join方法用来在队列中添加元素,需要添加的队列元素都必须是字符串 >>> ...

  7. cmd_memo

    1. bind host or ip:port #指定域名 curl -H 'Host:www.tsuiz.com' http://10.14.54.131:8080/check.do #指定ip和端 ...

  8. vue的store状态管理模式

    var store = { debug: true, state: { message: 'Hello!' }, setMessageAction (newValue) { //所有 store 中 ...

  9. BZOJ 2882: 工艺 (SA/SAM/最小表示法)

    我写的O(nlogn)O(nlogn)O(nlogn)的SA 8000ms 被 O(n)O(n)O(n)的SAM 2800ms 和 O(n)O(n)O(n)的最小表示法 500ms 头都锤爆- COD ...

  10. Acwing-252-树(点分治)

    链接: https://www.acwing.com/problem/content/254/ 题意: 给定一个有N个点(编号0,1,-,N-1)的树,每条边都有一个权值(不超过1000). 树上两个 ...