oracle ogg checkpoint,OGG目的端的checkpoint table被drop的修复方法

当Oracle GoldenGate的checkpoint table被意外删除时,可以通过以下步骤修复:1. 停止repfull进程;2. 使用DBLOGIN创建checkpoint table;3. 获取repfull的读检查点信息并使用ALTER REPLICAT更新;4. 启动repfull进程。修复后,检查点表将被正确插入记录,repfull进程恢复正常。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

OGG目的端的checkpoint table被drop的修复方法

参考自:OGG Replicat Failed Due To Check_point Table beingTruncated (文档 ID 1319832.1)

1.首先,start repfull报错:

GGSCI (localhost.localdomain) 8> view report repfull

***********************************************************************

Oracle GoldenGate Delivery for Oracle

Version 11.2.1.0.20 18227972 OGGCORE_11.2.1.0.0OGGBP_PLATFORMS_140304.2209_FBO

Linux, x64, 64bit (optimized), Oracle 10g on Mar  5 2014 02:20:23

Copyright (C) 1995, 2014, Oracle and/or its affiliates. All rights reserved.

Starting at 2015-06-11 08:49:51

***********************************************************************

Operating System Version:

Linux

Version #1 SMP Fri Jan 27 17:17:51 EST 2012, Release 2.6.18-308.el5

Node: localhost.localdomain

Machine: x86_64

soft limit  hard limit

Address Space Size  :    unlimited    unlimited

Heap Size            :    unlimited    unlimited

File Size            :    unlimited    unlimited

CPU Time            :    unlimited    unlimited

Process id: 7590

Description:

***********************************************************************

**            Running with the following parameters                  **

***********************************************************************

2015-06-11 08:49:51  INFO    OGG-03035  Operating system character set identified as UTF-8. Locale: en_US, LC_ALL:.

2015-06-11 08:49:51  INFO    OGG-02696  NON-ANSI SQL parameter syntax is used for parameter parsing.

replicat repfull

setenv ( NLS_LANG =  "AMERICAN_AMERICA.ZHS16GBK" )

2015-06-11 08:49:51  INFO    OGG-02095  Successfully set environment variable NLS_LANG=AMERICAN_AMERICA.ZHS16GBK.

assumetargetdefs

userid goldengate, password ************

DBOPTIONS DEFERREFCONST

gettruncates

ALLOWNOOPUPDATES

ddl include mapped

discardfile ./dirrpt/repfull.dsc, append, megabytes 5000

map scott.*, target scott.*;

map lc00019999.*, target lc00019999.*;

2015-06-11 08:49:51  INFO    OGG-00506  Both GETTRUNCATES and DDL replication are enabled.

2015-06-11 08:49:51  INFO    OGG-01815  Virtual Memory Facilities for: COM

anon alloc: mmap(MAP_ANON)  anon free: munmap

file alloc: mmap(MAP_SHARED)  file free: munmap

target directories:

/u02/ggs/dirtmp.

CACHEMGR virtual memory values (may have been adjusted)

CACHESIZE:                                2G

CACHEPAGEOUTSIZE (normal):                8M

PROCESS VM AVAIL FROM OS (min):          4G

CACHESIZEMAX (strict force to disk):  3.41G

Database Version:

Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bi

PL/SQL Release 10.2.0.5.0 - Production

CORE    10.2.0.5.0      Production

TNS for Linux: Version 10.2.0.5.0 - Production

NLSRTL Version 10.2.0.5.0 - Production

Database Language and Character Set:

NLS_LANG        = "AMERICAN_AMERICA.ZHS16GBK"

NLS_LANGUAGE    = "AMERICAN"

NLS_TERRITORY    = "AMERICA"

NLS_CHARACTERSET = "ZHS16GBK"

Source Context :

SourceModule            : [er.common]

SourceID                : [/scratch/aime1/adestore/views/aime1_adc4150267/oggcore/OpenSys/src/app/er/common.cpp]

SourceFunction          : [extract_start_point]

SourceLine              : [2142]

ThreadBacktrace        : [11] elements

: [/u02/ggs/libgglog.so(CMessageContext::AddThreadContext()+0x1e) [0x2ad4a9a6561e]]

: [/u02/ggs/libgglog.so(CMessageFactory::CreateMessage(CSourceContext*, unsigned int, ...)+0x2ec) [0x2ad4a9a5e15c]]

: [/u02/ggs/libgglog.so(_MSG_ERR_CHECKPOINT_GENERIC(CSourceContext*, char const*, CMessageFactory::MessageDisposition)+0x31) [0x2ad4a9a4f66b]

]

: [/u02/ggs/replicat(extract_start_point(time_elt_def*, time_elt_def*)+0x165) [0x520775]]

: [/u02/ggs/replicat(replicat_main(int, char**)+0x59f) [0x550f5f]]

: [/u02/ggs/replicat(ggs::gglib::MultiThreading::MainThread::ExecMain()+0x4f) [0x5ef7ff]]

: [/u02/ggs/replicat(ggs::gglib::MultiThreading::Thread::RunThread(ggs::gglib::MultiThreading::Thread::ThreadArgs*)+0x104) [0x5efa54]]

: [/u02/ggs/replicat(ggs::gglib::MultiThreading::MainThread::Run(int, char**)+0x8b) [0x5efb5b]]

: [/u02/ggs/replicat(main+0x2c) [0x5502ac]]

: [/lib64/libc.so.6(__libc_start_main+0xf4) [0x3a2a01d994]]

: [/u02/ggs/replicat(__gxx_personality_v0+0x31a) [0x4c266a]]

2015-06-11 08:49:52  ERROR  OGG-00446  Checkpoint table goldengate.ckptfull does not exist.  Please create the table or recreate the REPFULL group using the correct t

able.

2015-06-11 08:49:52  ERROR  OGG-01668  PROCESS ABENDING.

2.于是,就建立上goldengate.ckptfull 这个表:

GGSCI (localhost.localdomain) 9>  dblogin  userid goldengate, password xxx

Successfully logged into database.

GGSCI (localhost.localdomain) 10> ADD CHECKPOINTTABLE goldengate.ckptfull

Successfully created checkpoint table goldengate.ckptfull.

3.此时,start repfull报错:

Source Context :

SourceModule            : [er.common]

SourceID                : [/scratch/aime1/adestore/views/aime1_adc4150267/oggcore/OpenSys/src/app/er/common.cpp]

SourceFunction          : [extract_start_point]

SourceLine              : [2142]

ThreadBacktrace        : [11] elements

: [/u02/ggs/libgglog.so(CMessageContext::AddThreadContext()+0x1e) [0x2b18e359d61e]]

: [/u02/ggs/libgglog.so(CMessageFactory::CreateMessage(CSourceContext*, unsigned int, ...)+0x2ec) [0x2b18e359615c]]

: [/u02/ggs/libgglog.so(_MSG_ERR_CHECKPOINT_GENERIC(CSourceContext*, char const*, CMessageFactory::MessageDisposition)+0x31) [0x2b18e358766b]

]

: [/u02/ggs/replicat(extract_start_point(time_elt_def*, time_elt_def*)+0x165) [0x520775]]

: [/u02/ggs/replicat(replicat_main(int, char**)+0x59f) [0x550f5f]]

: [/u02/ggs/replicat(ggs::gglib::MultiThreading::MainThread::ExecMain()+0x4f) [0x5ef7ff]]

: [/u02/ggs/replicat(ggs::gglib::MultiThreading::Thread::RunThread(ggs::gglib::MultiThreading::Thread::ThreadArgs*)+0x104) [0x5efa54]]

: [/u02/ggs/replicat(ggs::gglib::MultiThreading::MainThread::Run(int, char**)+0x8b) [0x5efb5b]]

: [/u02/ggs/replicat(main+0x2c) [0x5502ac]]

: [/lib64/libc.so.6(__libc_start_main+0xf4) [0x3a2a01d994]]

: [/u02/ggs/replicat(__gxx_personality_v0+0x31a) [0x4c266a]]

2015-06-11 09:03:03  ERROR  OGG-00446  No data selecting position from checkpoint table goldengate.ckptfull for group 'REPFULL', key 1036574807 (0x3dc8e057), SQL

ECT a.current_dir, a.seqno, a.rba, a.audit_ts, a.log_csn, a.log_cmplt_csn, a.log_cmplt_xids, b.log_cmplt_xids FROM goldengate.ckptfull a LEFT JOIN goldengate.ckptfull_

lox b ON a.group_name = b.group_name AND a.group_key = b.group_key AND a.log_cmplt_csn = b.log_cmplt_csn WHERE a.group_name = 'REPFULL' AND a.group_key  = 1036574807>.

2015-06-11 09:03:03  ERROR  OGG-01668  PROCESS ABENDING.

4.得到repfull的读检查点信息:

GGSCI (localhost.localdomain) 16> info repfull

REPLICAT  REPFULL  Last Started 2015-06-11 08:30  Status ABENDED

Checkpoint Lag      00:00:00 (updated 00:33:01 ago)

Log Read Checkpoint  File /u02/ggs/dirdat/td000001 ---->1

First Record  RBA 1192        ---->1192

5.修改检查点(其实不叫修改,就是重复一下而已)

GGSCI (localhost.localdomain) 17> alter replicat repfull, extseqno 1, extrba 1192

REPLICAT altered.

GGSCI (localhost.localdomain) 18> info repfull

REPLICAT  REPFULL  Initialized  2015-06-11 09:05  Status STOPPED

Checkpoint Lag      00:00:00 (updated 00:00:04 ago)

Log Read Checkpoint  File /u02/ggs/dirdat/td000001

First Record  RBA 1192

6.启动repfull进程,

GGSCI (localhost.localdomain) 19> start repfull

Sending START request to MANAGER ...

REPLICAT REPFULL starting

注意,此时goldengate.ckptfull表里边才被插入一条记录。

7.检查状态:

GGSCI (localhost.localdomain) 41> info all

Program    Status      Group      Lag at Chkpt  Time Since Chkpt

MANAGER    RUNNING

REPLICAT    RUNNING    REPFULL    00:00:00      00:00:01

0b1331709591d260c1c78e86d0c51c18.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值