반응형
■ [2025-05-29] RAC to Single ADG 환경에서 Standby에서 아직 적용되지 않은 아카이브 로그가 Primary에서 유실 시 From Service를 이용한 복구 방법 (restore database from service) (12cR2)

 

[2025-05-29] RAC to Single ADG 환경에서 Standby에서 아직 적용되지 않은 아카이브 로그가 Primary에서 유실 시 From Service를 이용한 복구 방법 (restore database from service) (12cR2)


[실습 환경]

 

<Primary> --소스
OS : Oracle Linux Server 7.9 (Linux rdb01d 5.4.17-2102.201.3.el7uek.x86_64)
DB : Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
RAC1 : rdb01d(192.168.0.31) : DRDB1
RAC2 : rdb01d(192.168.0.32) : DRDB2
db_unique_name : DRDB

 

<Standby> --타켓
OS : Oracle Linux Server 7.9 (Linux rdb01d 5.4.17-2102.201.3.el7uek.x86_64)
DB : Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
RAC1 : tdb01p(192.168.0.41) : DRDB
db_unique_name : DRDB_STB

 

1. 타켓(STANDBY)의 아카이브 수신 및 적용 상태 확인

[2025-06-08:17:48:15][tdb01p]<SYS@DRDB>
COL CREATOR FOR A10
COL APPLIED FOR A10
SELECT B.THREAD#
     , B.SEQUENCE#
     , B.RESETLOGS_TIME
     , B.FIRST_TIME
     , B.NEXT_TIME
     , B.CREATOR
     , B.APPLIED
     , B.ARCHIVED
FROM
(
 SELECT A.THREAD#, MAX(A.SEQUENCE#) AS SEQUENCE#, MAX(A.RESETLOGS_ID) AS RESETLOGS_ID
   FROM V$ARCHIVED_LOG A
  WHERE A.RESETLOGS_TIME = (SELECT MAX(K.RESETLOGS_TIME) FROM V$ARCHIVED_LOG K)
  GROUP BY A.THREAD#
  ORDER BY A.THREAD#
) A
, V$ARCHIVED_LOG B
WHERE A.RESETLOGS_ID = B.RESETLOGS_ID
  AND A.THREAD# = B.THREAD#
  AND A.SEQUENCE# = B.SEQUENCE#
;

   THREAD#  SEQUENCE# RESETLOGS_TIME      FIRST_TIME          NEXT_TIME           CREATOR    APPLIED    ARCHIVED
---------- ---------- ------------------- ------------------- ------------------- ---------- ---------- ---------
         1         65 2025-05-06:10:24:18 2025-06-08:17:23:12 2025-06-08:17:23:24 ARCH       YES        YES
         2         63 2025-05-06:10:24:18 2025-06-08:17:23:14 2025-06-08:17:23:17 ARCH       YES        YES

2 rows selected.

--> standby db를 내림

[2025-06-08:17:48:15][tdb01p]<SYS@DRDB> shutdown immediate;

[+ASM:grid@tdb01p][/home/grid]$ asmcmd ls -sl +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_65.339.1203269005
Type        Redund  Striped  Time             Sys  Block_Size  Blocks   Bytes    Space  Name
ARCHIVELOG  UNPROT  COARSE   JUN 08 17:00:00  Y           512     555  284160  4194304  thread_1_seq_65.339.1203269005

 

[+ASM:grid@tdb01p][/home/grid]$ asmcmd ls -sl +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_63.399.1203269001
Type        Redund  Striped  Time             Sys  Block_Size  Blocks  Bytes    Space  Name
ARCHIVELOG  UNPROT  COARSE   JUN 08 17:00:00  Y           512       5   2560  4194304  thread_2_seq_63.399.1203269001

 

2. 소스(PRIMARY)에서 아카이브 로그를 갱신함

 

[2025-06-08:18:13:33][rdb02d]<SYS@DRDB2> archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            +FRA1
Oldest online log sequence     63
Next log sequence to archive   65
Current log sequence           65

--> thread 2(RAC2번) 현재 65번임

 

[2025-06-08:17:22:12][rdb01d]<SYS@DRDB1> archive log list
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            +FRA1
Oldest online log sequence     64
Next log sequence to archive   66
Current log sequence           66

--> thread 1(RAC1번) 현재 66번임

 

-- rac1번에서 수행

[2025-06-08:17:22:12][rdb01d]<SYS@DRDB1> ALTER SYSTEM ARCHIVE LOG CURRENT;

[2025-06-08:17:22:12][rdb01d]<SYS@DRDB1> archive log list
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            +FRA1
Oldest online log sequence     65
Next log sequence to archive   67
Current log sequence           67
--> thread 1 기준으로는 66이 생기고

 

[2025-06-08:18:13:33][rdb02d]<SYS@DRDB2> archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            +FRA1
Oldest online log sequence     63
Next log sequence to archive   65
Current log sequence           65
--> thread 2 기준으로는 그대로임 (rac2번에서도 alter system archive log current했으면 바뀌었을 것임)

 

결국 소스에서 아카이브의 변화가 일어난 상황임

 


3. 타켓(STANDBY)에서 아카이브 파일 상황을 확인

 

[+ASM:grid@tdb01p][/home/grid]$ asmcmd ls -sl +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/
Type        Redund  Striped  Time             Sys  Block_Size  Blocks     Bytes      Space  Name
...생략
ARCHIVELOG  UNPROT  COARSE   JUN 08 17:00:00  Y           512     555    284160    4194304  thread_1_seq_65.339.1203269005
...생략
ARCHIVELOG  UNPROT  COARSE   JUN 08 17:00:00  Y           512       5      2560    4194304  thread_2_seq_63.399.1203269001
--> 타켓이 내려간 상태기 때문에 아직 아카이브가 적용 안됐음 (소스에 존재하는 thread 1의 66과 thread 2의 64가 없음)

 

4. 소스(PRIMARY)에서 아카이브 로그를 강제로 유실 시킴

ASMCMD [+] > cd +FRA1/DRDB/ARCHIVELOG/2025_06_08
ASMCMD [+FRA1/DRDB/ARCHIVELOG/2025_06_08] > ls -sl
Type        Redund  Striped  Time             Sys  Block_Size  Blocks      Bytes      Space  Name
ARCHIVELOG  UNPROT  COARSE   JUN 08 17:00:00  Y           512   14869    7612928    8388608  thread_1_seq_61.312.1203268703
ARCHIVELOG  UNPROT  COARSE   JUN 08 17:00:00  Y           512     114      58368    4194304  thread_1_seq_62.293.1203268711
ARCHIVELOG  UNPROT  COARSE   JUN 08 17:00:00  Y           512  171286   87698432   88080384  thread_1_seq_63.303.1203268783
ARCHIVELOG  UNPROT  COARSE   JUN 08 17:00:00  Y           512   44504   22786048   25165824  thread_1_seq_64.306.1203268993
ARCHIVELOG  UNPROT  COARSE   JUN 08 17:00:00  Y           512     555     284160    4194304  thread_1_seq_65.268.1203269005
ARCHIVELOG  UNPROT  COARSE   JUN 08 18:00:00  Y           512  292532  149776384  150994944  thread_1_seq_66.267.1203271991
ARCHIVELOG  UNPROT  COARSE   JUN 08 17:00:00  Y           512     578     295936    4194304  thread_2_seq_58.344.1203268703
ARCHIVELOG  UNPROT  COARSE   JUN 08 17:00:00  Y           512       2       1024    4194304  thread_2_seq_59.343.1203268705
ARCHIVELOG  UNPROT  COARSE   JUN 08 17:00:00  Y           512       2       1024    4194304  thread_2_seq_60.298.1203268777
ARCHIVELOG  UNPROT  COARSE   JUN 08 17:00:00  Y           512       2       1024    4194304  thread_2_seq_61.302.1203268781
ARCHIVELOG  UNPROT  COARSE   JUN 08 17:00:00  Y           512   14809    7582208    8388608  thread_2_seq_62.308.1203268995
ARCHIVELOG  UNPROT  COARSE   JUN 08 17:00:00  Y           512       5       2560    4194304  thread_2_seq_63.346.1203268997
ARCHIVELOG  UNPROT  COARSE   JUN 08 18:00:00  Y           512   17258    8836096   12582912  thread_2_seq_64.266.1203271993

-->thread_1_seq_66.267.1203271991 과
-->thread_2_seq_64.266.1203271993 은 아직 타켓으로 전송 못시킨 상황임!

 

ASMCMD [+FRA1/DRDB/ARCHIVELOG/2025_06_08] > rm -f thread_1_seq_66.267.1203271991
ASMCMD [+FRA1/DRDB/ARCHIVELOG/2025_06_08] > rm -f thread_2_seq_64.266.1203271993
--> 삭제함 이제 타켓은 실시간 동기화가 안될 것임

 

5. 타켓(STANDBY)을 다시 startup read only한 후 동기화 상태 확인
 
--타켓에서 아래의 sql문으로 확인하면 삭제한 아카이브 로그 파일이 수신 안되는 것을 확인할 수 있음
SELECT A.*
  FROM V$ARCHIVED_LOG A
 WHERE A.RESETLOGS_TIME = (SELECT MAX(K.RESETLOGS_TIME) FROM V$ARCHIVED_LOG K)
 ORDER BY A.THREAD#, A.SEQUENCE#
 ;

 
 [DRDB:oracle@tdb01p][/u01/app/oracle/product/12c/db_1/network/admin]$ dgmgrl sysdg/Oracle123$@TNS_DRDB_STB
DGMGRL for Linux: Release 12.2.0.1.0 - Production on Sun Jun 8 18:33:20 2025

Copyright (c) 1982, 2017, Oracle and/or its affiliates.  All rights reserved.

Welcome to DGMGRL, type "help" for information.
Connected to "DRDB_STB"
Connected as SYSDG.

 

DGMGRL> show database "drdb_stb";

Database - drdb_stb

  Role:               PHYSICAL STANDBY
  Intended State:     APPLY-ON
  Transport Lag:      28 minutes 2 seconds (computed 1 second ago)
  Apply Lag:          28 minutes 5 seconds (computed 1 second ago)
  Average Apply Rate: 0 Byte/s
  Real Time Query:    ON
  Instance(s):
    DRDB

  Database Warning(s):
    ORA-16853: apply lag has exceeded specified threshold
    ORA-16855: transport lag has exceeded specified threshold

Database Status:
WARNING

 

[2025-06-08:17:48:15][tdb01p]<SYS@DRDB>
col SOURCE_DB_UNIQUE_NAME for a30
col NAME for a30
col TIME_COMPUTED for a30
col VALUE for a20
select SOURCE_DB_UNIQUE_NAME, NAME, VALUE, TIME_COMPUTED from v$dataguard_stats;

SOURCE_DB_UNIQUE_NAME          NAME                           VALUE                TIME_COMPUTED
------------------------------ ------------------------------ -------------------- ------------------------------
DRDB                           transport lag                  +00 00:33:39         06/08/2025 18:39:04
DRDB                           apply lag                      +00 00:33:42         06/08/2025 18:39:04
DRDB                           apply finish time              (NULL)               06/08/2025 18:39:04
(NULL)                         estimated startup time         53                   06/08/2025 18:39:04

 

6. 타켓(STANDBY)에서 restore database from service를 이용하여 복구 시작

 

타켓(STANDBY)에서 디비의 백업본을 땡겨와서 RESOTRE 및 RECOVER해서 다시 싱크를 맞추는 작업임

 

[DRDB:oracle@tdb01p][/u01/app/oracle/product/12c/db_1/network/admin]$ cat tnsnames.ora
# tnsnames.ora Network Configuration File: /u01/app/oracle/product/12c/db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.

LISTENER_PTDB =
  (ADDRESS = (PROTOCOL = TCP)(HOST = tdb01p)(PORT = 1521))


PTDB =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = tdb01p)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = PTDB)
    )
  )

########## For ADG Start ##########
## For Primary
TNS_DRDB =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.31)(PORT = 1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.32)(PORT = 1521))
          (LOAD_BALANCE = OFF)
          (FAILOVER = ON)
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = DRDB)
      (FAILOVER_MODE = (TYPE = SELECT)(METHOD = BASIC))
    )
)

## -->TNS_DRDB --> 이게 바로 소스(PRIMARY)의 tns info임

 

## For Standby
TNS_DRDB_STB =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.41)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = DRDB_STB)
    )
  )
########## For ADG END ##########

 

RMAN> shutdown immediate;

database dismounted
Oracle instance shut down

 

RMAN> STARTUP NOMOUNT;

connected to target database (not started)
Oracle instance started

Total System Global Area     805306368 bytes

Fixed Size                     8625856 bytes
Variable Size                352321856 bytes
Database Buffers             436207616 bytes
Redo Buffers                   8151040 bytes

 

--> 소스(PRIMARY)의 STANDBY CONTROLEFILE을 땡겨와서 RESTORE시키는 것임

RMAN> RESTORE STANDBY CONTROLFILE FROM SERVICE TNS_DRDB;

Starting restore at 25/06/08
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=267 device type=DISK

channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: using network backup set from service TNS_DRDB
channel ORA_DISK_1: restoring control file
channel ORA_DISK_1: restore complete, elapsed time: 00:00:02
output file name=+DATA1/DRDB_STB/CONTROLFILE/current.272.1200267603
output file name=+FRA1/DRDB_STB/CONTROLFILE/current.275.1200267603
Finished restore at 25/06/08

 

RMAN> ALTER DATABASE MOUNT;

Statement processed
released channel: ORA_DISK_1


RMAN> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;

Statement processed

 

--소스(PRIMARY)에서 땡겨온 STARNDBY CONTROLE 파일 기준으로 파일 번호를 +DATA1 영역으로 SET NEWNAME하는 스크립트를 생성하는 SQL문임

RMAN> select 'SET NEWNAME FOR DATAFILE ' || file# || ' ' || 'to' ||''''|| '+DATA1'||'''' || ';' AS SET_NEW_NAME from v$datafile;

SET_NEW_NAME
-----------------------------------------------------------------------------
SET NEWNAME FOR DATAFILE 1 to'+DATA1';
SET NEWNAME FOR DATAFILE 2 to'+DATA1';
SET NEWNAME FOR DATAFILE 3 to'+DATA1';
SET NEWNAME FOR DATAFILE 4 to'+DATA1';
SET NEWNAME FOR DATAFILE 5 to'+DATA1';
SET NEWNAME FOR DATAFILE 7 to'+DATA1';
SET NEWNAME FOR DATAFILE 8 to'+DATA1';

 

[2025-06-08:18:43:15][tdb01p]<SYS@DRDB> quit

 

[DRDB:oracle@tdb01p][/home/oracle]$ alias rt
alias rt='rman target /'

[DRDB:oracle@tdb01p][/home/oracle]$ rt

Recovery Manager: Release 12.2.0.1.0 - Production on Sun Jun 8 18:44:36 2025

Copyright (c) 1982, 2017, Oracle and/or its affiliates.  All rights reserved.

connected to target database: DRDB (DBID=1008397436, not open)

 

RUN {
 ALLOCATE CHANNEL c1 DEVICE TYPE DISK;
 SET NEWNAME FOR DATAFILE 1 to'+DATA1';
 SET NEWNAME FOR DATAFILE 2 to'+DATA1';
 SET NEWNAME FOR DATAFILE 3 to'+DATA1';
 SET NEWNAME FOR DATAFILE 4 to'+DATA1';
 SET NEWNAME FOR DATAFILE 5 to'+DATA1';
 SET NEWNAME FOR DATAFILE 7 to'+DATA1';
 SET NEWNAME FOR DATAFILE 8 to'+DATA1';

 RESTORE DATABASE FROM SERVICE TNS_DRDB USING COMPRESSED BACKUPSET;
 SWITCH DATAFILE ALL;
 RELEASE CHANNEL c1;
}

--> 각 데이터 파일을 +DATA1 위치로 하고 소스의 백업본(데이터파일+아카이브)으로 RESOTRE한 후

--> SWITCH DATAFILE ALL까지 해서 컨트롤 파일 내 데이터 파일 경로까지 갱신 시키는 것임

 

using target database control file instead of recovery catalog
allocated channel: c1
channel c1: SID=400 device type=DISK

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

Starting restore at 25/06/08
Starting implicit crosscheck backup at 25/06/08
Crosschecked 11 objects
Finished implicit crosscheck backup at 25/06/08

Starting implicit crosscheck copy at 25/06/08
Finished implicit crosscheck copy at 25/06/08

searching for all files in the recovery area
cataloging files...
cataloging done

List of Cataloged Files
=======================

--> 소스(PRIMARY)에서 유실된 THREAD 1 66과 THREAD 2 64는 당연히 타켓(STANDBY)에 존재안하는 것을 알 수 있음
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_62.408.1203268995
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_64.409.1203268997
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_44.314.1203268999
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_46.407.1203268999
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_45.315.1203268999
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_49.327.1203268999
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_45.323.1203268999
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_47.371.1203268999
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_49.374.1203268999
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_47.379.1203268999
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_48.372.1203268999
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_48.373.1203268999
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_51.380.1203268999
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_50.402.1203268999
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_46.401.1203268999
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_43.400.1203269001
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_63.399.1203269001
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_50.398.1203269001
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_52.397.1203269003
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_51.396.1203269003
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_52.395.1203269003
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_53.394.1203269003
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_57.393.1203269003
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_56.392.1203269003
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_55.390.1203269003
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_54.391.1203269003
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_58.343.1203269003
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_59.341.1203269005
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_60.344.1203269005
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_65.339.1203269005
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_54.338.1203269005
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_55.342.1203269005
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_53.387.1203269005
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_61.386.1203269005
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_59.385.1203269007
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_57.384.1203269007
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_58.328.1203269007
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_56.383.1203269007
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_62.381.1203269007
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_63.382.1203269007
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_60.370.1203269007
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_61.369.1203269007
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_67.279.1203272649
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_65.368.1203272649
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_68.281.1203273875
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_66.301.1203273877
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_67.288.1203274411
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_69.289.1203274411
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_70.467.1203275237
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_68.457.1203275237
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_71.464.1203275819
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_69.351.1203275819
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_31/thread_2_seq_30.448.1202519797
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_31/thread_2_seq_31.458.1202523607
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_31/thread_1_seq_35.334.1202523609
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_31/thread_1_seq_36.430.1202523735
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_31/thread_2_seq_32.432.1202523737
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_31/thread_2_seq_33.405.1202561653
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_31/thread_2_seq_34.445.1202561655
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_31/thread_1_seq_39.406.1202561655
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_31/thread_1_seq_38.333.1202561655
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_31/thread_1_seq_40.335.1202561657
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_31/thread_1_seq_37.403.1202561657
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_31/thread_2_seq_35.388.1202561659
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_31/thread_2_seq_36.414.1202561659
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_31/thread_2_seq_37.375.1202561723
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_31/thread_2_seq_38.377.1202561725
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_31/thread_1_seq_41.378.1202561727
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_31/thread_2_seq_41.389.1202561911
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_31/thread_1_seq_42.427.1202561913
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_31/thread_2_seq_42.426.1202561915
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_31/thread_2_seq_40.421.1202561949
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_31/thread_2_seq_39.419.1202561973
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_31/thread_1_seq_43.415.1202571767
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_31/thread_1_seq_44.410.1202571769
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_30/thread_2_seq_29.404.1202437331
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_2_seq_11.456.1200356597
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_1_seq_21.431.1200356607
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_1_seq_20.439.1200356609
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_2_seq_12.437.1200356629
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_1_seq_22.459.1200356729
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_1_seq_26.438.1200357299
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_1_seq_25.455.1200357305
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_1_seq_24.441.1200357305
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_1_seq_23.463.1200357307
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_2_seq_13.453.1200357323
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_2_seq_14.466.1200357335
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_2_seq_15.454.1200357515
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_1_seq_27.452.1200357523
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_1_seq_28.468.1200357525
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_1_seq_29.420.1200357797
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_2_seq_16.417.1200357817
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_2_seq_17.412.1200358625
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_1_seq_30.433.1200358629
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_1_seq_31.413.1200358633
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_1_seq_32.418.1200359957
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_1_seq_33.442.1200363637
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_2_seq_18.443.1200363639
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_1_seq_34.434.1200363925
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_06/thread_2_seq_19.435.1200363927
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_04/thread_1_seq_18.450.1200267647
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_04/thread_2_seq_9.462.1200267651
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_04/thread_2_seq_10.423.1200267979
File Name: +FRA1/DRDB_STB/ARCHIVELOG/2025_05_04/thread_1_seq_19.416.1200267981


channel c1: starting datafile backup set restore
channel c1: using compressed network backup set from service TNS_DRDB
channel c1: specifying datafile(s) to restore from backup set
channel c1: restoring datafile 00001 to +DATA1
channel c1: restore complete, elapsed time: 00:00:36
channel c1: starting datafile backup set restore
channel c1: using compressed network backup set from service TNS_DRDB
channel c1: specifying datafile(s) to restore from backup set
channel c1: restoring datafile 00002 to +DATA1
channel c1: restore complete, elapsed time: 00:00:16
channel c1: starting datafile backup set restore
channel c1: using compressed network backup set from service TNS_DRDB
channel c1: specifying datafile(s) to restore from backup set
channel c1: restoring datafile 00003 to +DATA1
channel c1: restore complete, elapsed time: 00:00:45
channel c1: starting datafile backup set restore
channel c1: using compressed network backup set from service TNS_DRDB
channel c1: specifying datafile(s) to restore from backup set
channel c1: restoring datafile 00004 to +DATA1
channel c1: restore complete, elapsed time: 00:00:04
channel c1: starting datafile backup set restore
channel c1: using compressed network backup set from service TNS_DRDB
channel c1: specifying datafile(s) to restore from backup set
channel c1: restoring datafile 00005 to +DATA1
channel c1: restore complete, elapsed time: 00:00:02
channel c1: starting datafile backup set restore
channel c1: using compressed network backup set from service TNS_DRDB
channel c1: specifying datafile(s) to restore from backup set
channel c1: restoring datafile 00007 to +DATA1
channel c1: restore complete, elapsed time: 00:00:01
channel c1: starting datafile backup set restore
channel c1: using compressed network backup set from service TNS_DRDB
channel c1: specifying datafile(s) to restore from backup set
channel c1: restoring datafile 00008 to +DATA1
channel c1: restore complete, elapsed time: 00:00:07
Finished restore at 25/06/08

datafile 1 switched to datafile copy
input datafile copy RECID=7 STAMP=1203276394 file name=+DATA1/DRDB_STB/DATAFILE/system.332.1203276363
datafile 2 switched to datafile copy
input datafile copy RECID=8 STAMP=1203276408 file name=+DATA1/DRDB_STB/DATAFILE/tuner_data1.333.1203276399
datafile 3 switched to datafile copy
input datafile copy RECID=9 STAMP=1203276453 file name=+DATA1/DRDB_STB/DATAFILE/sysaux.334.1203276415
datafile 4 switched to datafile copy
input datafile copy RECID=10 STAMP=1203276462 file name=+DATA1/DRDB_STB/DATAFILE/undotbs1.335.1203276461
datafile 5 switched to datafile copy
input datafile copy RECID=11 STAMP=1203276464 file name=+DATA1/DRDB_STB/DATAFILE/undotbs2.336.1203276465
datafile 7 switched to datafile copy
input datafile copy RECID=12 STAMP=1203276465 file name=+DATA1/DRDB_STB/DATAFILE/users.337.1203276465
datafile 8 switched to datafile copy
input datafile copy RECID=13 STAMP=1203276470 file name=+DATA1/DRDB_STB/DATAFILE/tuner_idx1.338.1203276467

released channel: c1

 

RMAN> RECOVER DATABASE;

Starting recover at 25/06/08
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=400 device type=DISK

starting media recovery

archived log for thread 1 with sequence 72 is already on disk as file +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_72.358.1203276205
archived log for thread 2 with sequence 70 is already on disk as file +FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_70.363.1203276207
archived log file name=+FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_1_seq_72.358.1203276205 thread=1 sequence=72
archived log file name=+FRA1/DRDB_STB/ARCHIVELOG/2025_06_08/thread_2_seq_70.363.1203276207 thread=2 sequence=70
media recovery complete, elapsed time: 00:00:01
Finished recover at 25/06/08

--> 소스(PRIMARY)의 최신의 백업본으로 RESOTRE한후 소스를 백업하는 과정에서 발생한 가장 최신의 아카이브까지 RECOVER됨

 

RMAN> ALTER DATABASE OPEN read only;

Statement processed

[DRDB:oracle@tdb01p][/u01/app/oracle/product/12c/db_1/network/admin]$ ss

SQL*Plus: Release 12.2.0.1.0 Production on Sun Jun 8 19:31:02 2025

Copyright (c) 1982, 2016, Oracle.  All rights reserved.


Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production

[2025-06-08:19:31:02][tdb01p]<SYS@DRDB> recover managed standby database cancel;
ORA-16136: Managed Standby Recovery not active

 

-- 다시 동기화 시작

[2025-06-08:19:31:02][tdb01p]<SYS@DRDB> alter database recover managed standby database using current logfile disconnect from session;

Database altered.

Elapsed: 00:00:06.11

반응형

+ Recent posts