ITPub博客

首页 > 数据库 > Oracle > DG正常or异常切换后如何快速恢复OGG

DG正常or异常切换后如何快速恢复OGG

原创 Oracle 作者:梦夕林1992 时间:2025-02-10 18:34:13 0 删除 编辑

需求:

有一套生产-DG环境,且目前生产还有一套OGG,同步部分表至其他数据库。希望在生产和DG做切换后,尽量减少ogg改动并梳理步骤。

下面根据DG正常切换和异常切换两种情况简单的做了模拟及步骤梳理,供参考(仅列出ogg相关操作)


1.环境描述

切换前:


D G 生产端

D G 目标端

IP

1 92.168.238.56

1 92.168.238.57

S ID

o ra

o radg

O GG

12.2.0.2.2

/

切换后


D G 目标端

D G 生产端

IP

1 92.168.238.56

1 92.168.238.57

S ID

o ra

o radg

O GG

/

12.2.0.2.2


2.DG正常切换

基本步骤为:停业务,确认ogg,DG切换,恢复ogg

(在停止业务后要检查OGG的状态,确保已经挖到最新)

2.1 OGG进程检查并停止

查看OGG挖掘进程是否挖掘到最新,如果为EOF则是最新的,则可以停止进程,否则需要等待挖掘到最新时才能停。

GGSCI 2> send ext1 status

Sending STATUS request to EXTRACT EXT1 ...

EXTRACT EXT1 (PID 19235)

  Current status: Recovery complete: At EOF


  Current read position:

  Redo thread #: 1

  Sequence #: 4

  RBA: 1426944

  Timestamp: 2024-12-22 11:08:46.000000

  SCN: 2979.1786729399 (12796494304183)

  Current write position:

  Sequence #: 37

  RBA: 1433

  Timestamp: 2024-12-22 11:08:43.350762

  Extract Trail: ./dirdat/aa


停止挖掘和传输进程

GGSCI 4> stop ext1

Sending STOP request to EXTRACT EXT1 ...

Request processed.


GGSCI 5> stop dmp1

Sending STOP request to EXTRACT DMP1 ...

Request processed.


GGSCI 6> stop mgr


2.2NFS挂载OGG目录

为尽可能减少ogg参数的修改,变动,我们将原生产的ogg目录(238.56上的ogg目录)nfs挂载到dg切换后的新生产端(也就是原来的dg端238.57)

nfs的配置步骤不做说明,自行配置。



2.3现生产端启动OGG

GGSCI 2> start mgr

Manager started.


GGSCI 3> start ext1

Sending START request to MANAGER ...

EXTRACT EXT1 starting



GGSCI 4> start dmp1

Sending START request to MANAGER ...

EXTRACT DMP1 starting


2.4 OGG报错查看

OGG在生产库启动后,查看挖掘进程的信息

GGSCI (ogg) 3> info ext1


EXTRACT    EXT1      Last Started 2024-12-22 10:42   Status ABENDED

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

Log Read Checkpoint  Oracle Redo Logs

                     2024-12-22 10:13:02  Seqno 31, RBA 3136512

                     SCN 2979.1786705102 (12796494279886)

查看报错信息

2024-12-22 10:42:40  ERROR   OGG-02803  Oracle GoldenGate Capture for Oracle, ext1.prm:  Encountered a Data 

Guard role transition. Alter Extract to SCN 12,796,494,300,848 and restart Extract, or recreate Extract with the correct 

number of threads at SCN 12,796,494,300,848.


2.5重新指定SCN

我们可以看到报错信息里提示:因为数据库的角色进行转换,需要重新指定scn号。

GGSCI 4> alter ext1,scn 12796494300848

EXTRACT altered.


GGSCI 5> info ext1

EXTRACT    EXT1      Initialized   20214-12-22 10:45   Status STOPPED

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

Log Read Checkpoint  Oracle Redo Logs

                     First Record         Seqno 0, RBA 0

                     SCN 2979.1786726064 (12796494300848)


2.6启动挖掘进程

启动挖掘进程

GGSCI 6> start ext1


3.DG灾难切换

由于DG灾难切换,DG需要重新搭建过,因此归档日志从1开始。

3.1现生产库启动OGG

GGSCI 2> start mgr

Manager started.


GGSCI 3> start ext1

Sending START request to MANAGER ...

EXTRACT EXT1 starting


GGSCI 4> start dmp1

Sending START request to MANAGER ...

EXTRACT DMP1 starting


3.2重新指定seqno

确保原先的归档日志已经挖掘最新后重新指定归档号

GGSCI 5> info ext1

EXTRACT    EXT1      Last Started 2024-12-22 10:56   Status RUNNING

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

Process ID           25799

Log Read Checkpoint  Oracle Redo Logs

                     2024-12-22 10:55:12  Seqno 35, RBA 21504

                     SCN 2979.1786728225 (12796494303009)


当状态是EOF时,表示挖掘到最新归档。

GGSCI 7> send ext1 status

Sending STATUS request to EXTRACT EXT1 ...

EXTRACT EXT1 (PID 26888)

  Current status: Recovery complete: At EOF


由于生产库是强制拉起来,因此归档号也是从1开始,需要重新指定seqno号。

GGSCI 9> stop ext1
Sending STOP request to EXTRACT EXT1 ...
Request processed.
GGSCI 10> alter ext1 thread 1 extseqno 1 extrba 0
EXTRACT altered.

3.3启动挖掘进程

启动挖掘进程

GGSCI 11> start ext1


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29956245/viewspace-3071614/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: OGG-01937 报错处理
请登录后发表评论 登录
全部评论

注册时间:2014-10-13

  • 博文量
    90
  • 访问量
    85405