adg的archive出现gap,使用增量恢复的方式进行恢复adg,RMAN-06094: datafile 1 must be restored
① 主库丢失归档文件,然后在不重建物理dg的情况下来恢复物理dg
一.4.2 实验过程
一.4.2.1 主备库环境
查看主库的信息:
SQL>select protection_mode,protection_level,database_role,force_logging,open_mode,switchover_status from v$database;
PROTECTION_MODE PROTECTION_LEVEL DATABASE_ROLE FOR OPEN_MODE SWITCHOVER_STATUS
----------- -------------------- -------------------- ---------------- --- -------------------- --------------------
MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE PRIMARY YES READ WRITE TO STANDBY
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /u01/arch/prod
Oldest online log sequence 153
Next log sequence to archive 0
Current log sequence 155
查看备库的信息:
SQL>select protection_mode,protection_level,database_role,force_logging,open_mode,switchover_status from v$database;
PROTECTION_MODE PROTECTION_LEVEL DATABASE_ROLE FOR OPEN_MODE SWITCHOVER_STATUS
---------- -------------------- -------------------- ---------------- --- -------------------- --------------------
MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE PHYSICAL STANDBY YES READ ONLY WITH APPLY NOT ALLOWED
已用时间: 00: 00: 00.06
20:40:44 SQL>
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /u01/arch/phy1
Oldest online log sequence 153
Next log sequence to archive 0
Current log sequence 155
20:43:23 SQL>
一.4.2.2 模拟归档丢失
备库操作,备库取消归档应用,让备库处于只读模式:
20:43:23 SQL> ALTER ATABASE recover managed standby DATABASE cancel;
数据库已更改。
SQL>select protection_mode,protection_level,database_role,open_mode,switchover_status from v$database;
PROTECTION_MODE PROTECTION_LEVEL DATABASE_ROLE FOR OPEN_MODE SWITCHOVER_STATUS
---------- -------------------- -------------------- ---------------- --- -------------------- --------------------
MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE PHYSICAL STANDBY YES READ ONLY NOT ALLOWED
主库配置归档2的状态为defer,目的是为了不把归档自动传递到备库,实际情况下往往是由于网络故障,备库挂掉等等情况导致,我们多次切换主库日志:
20:50:48 SQL> ALTER system SET log_archive_dest_state_2 = 'defer';
SQL> alter system switch logfile;
、、、、、、、、、、
SQL> select count(*) from test.test;
COUNT(*)
----------
658944
SQL>
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /u01/arch/prod
Oldest online log sequence 170
Next log sequence to archive 172
Current log sequence 172
SQL> col name for a100
set linesize 9999 pagesize 9999
SELECT dest_id,THREAD#,NAME,sequence#,archived,applied,a.NEXT_CHANGE# FROM v$archived_log a
WHERE a.sequence# >= 40
AND resetlogs_change# =(SELECT d.RESETLOGS_CHANGE# FROM v$database d)
ORDER BY a.THREAD#,a.sequence#,a.dest_id;SQL> SQL> 2 3 4
DEST_ID THREAD# NAME SEQUENCE# ARC APPLIED NEXT_CHANGE#
---------- ---------- ---------------------------------------------------------------------------------------------------- ---------- --- --------- ------------
2 1 ogg1 156 YES NO 1024803
1 1 /u01/arch/prod/1_157_981738248.arc 157 YES NO 1024808
1 1 /u01/arch/prod/1_158_981738248.arc 158 YES NO 1024814
1 1 /u01/arch/prod/1_159_981738248.arc 159 YES NO 1024817
1 1 /u01/arch/prod/1_160_981738248.arc 160 YES NO 1024820
1 1 /u01/arch/prod/1_161_981738248.arc 161 YES NO 1024825
1 1 /u01/arch/prod/1_162_981738248.arc 162 YES NO 1025156
1 1 /u01/arch/prod/1_163_981738248.arc 163 YES NO 1025163
1 1 /u01/arch/prod/1_164_981738248.arc 164 YES NO 1025171
1 1 /u01/arch/prod/1_165_981738248.arc 165 YES NO 1025174
1 1 /u01/arch/prod/1_166_981738248.arc 166 YES NO 1025177
1 1 /u01/arch/prod/1_167_981738248.arc 167 YES NO 1025182
1 1 /u01/arch/prod/1_168_981738248.arc 168 YES NO 1025185
1 1 /u01/arch/prod/1_169_981738248.arc 169 YES NO 1025398
1 1 /u01/arch/prod/1_170_981738248.arc 170 YES NO 1025405
1 1 /u01/arch/prod/1_171_981738248.arc 171 YES NO 1025412
159 rows selected.
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /u01/arch/phy1
Oldest online log sequence 154
Next log sequence to archive 0
Current log sequence 156
SQL> col name for a100
set linesize 9999 pagesize 9999
SELECT dest_id,THREAD#,NAME,sequence#,archived,applied,a.NEXT_CHANGE# FROM v$archived_log a
WHERE a.sequence# >= 40
AND resetlogs_change# =(SELECT d.RESETLOGS_CHANGE# FROM v$database d)
ORDER BY a.THREAD#,aSQL> SQL> 2 3 4 .sequence#,a.dest_id;
DEST_ID THREAD# NAME SEQUENCE# ARC APPLIED NEXT_CHANGE#
---------- ---------- ---------------------------------------------------------------------------------------------------- ---------- --- --------- ------------
1 1 /u01/arch/phy1/1_152_981738248.arc 152 YES YES 1015367
1 1 /u01/arch/phy1/1_153_981738248.arc 153 YES YES 1015455
1 1 /u01/arch/phy1/1_154_981738248.arc 154 YES YES 1016001
1 1 /u01/arch/phy1/1_155_981738248.arc 155 YES NO 1024646
1 1 /u01/arch/phy1/1_156_981738248.arc 156 YES NO 1024803
40 rows selected.
可以看到,备库已经断档了,157到171都没有接收,接下来我们删除主库的归档日志,我们只删除54、55这2 个归档日志:
[oracle@primary prod]$ rm -rf 1_162_981738248.arc
[oracle@primary prod]$ rm -rf 1_163_981738248.arc
[oracle@primary prod]$ rm -rf 1_164_981738248.arc
[oracle@primary prod]$ rm -rf 1_165_981738248.arc
[oracle@primary prod]$ rm -rf 1_166_981738248.arc
[oracle@primary prod]$ rm -rf 1_167_981738248.arc
[oracle@primary prod]$ rm -rf 1_168_981738248.arc
[oracle@primary prod]$ rm -rf 1_169_981738248.arc
主库开启备库的归档:
SQL> ALTER system SET log_archive_dest_state_2 = 'enable';
备库开启日志恢复模式:
SQL> alter database recover managed standby database using current logfile disconnect from session;
Database altered.
SQL> select thread#,low_sequence#,high_sequence# from v$archive_gap;
THREAD# LOW_SEQUENCE# HIGH_SEQUENCE#
---------- ------------- --------------
1 162 169
可以看到备库已经产生gap 了。
一.4.2.3 主库基于SCN备份
162-169号日志不见了,这个时候我们以162号的归档日志的next_change#即161号的first_change#为scn号来对主库基于scn的rman 增量备份。
SQL> SELECT (SELECT MIN(d.CHECKPOINT_CHANGE#) FROM v$datafile d) datafile_scn,
(SELECT MIN(d.CHECKPOINT_CHANGE#)
FROM v$datafile_header d WHERE rownum = 1) datafile_header_scn,
(SELECT current_scn FROM v$database) current_scn,
(SELECT b.NEXT_CHANGE# FROM v$archived_log b WHERE b.SEQUENCE# = 161
AND resetlogs_change# = (SELECT d.RESETLOGS_CHANGE# FROM v$database d) AND rownum = 1) NEXT_CHANGE# FROM dual; 2 3 4 5 6
DATAFILE_SCN DATAFILE_HEADER_SCN CURRENT_SCN NEXT_CHANGE#
------------ ------------------- ----------- ------------
1024825 1024825 1024824
这几个值基本上差不多,我们可以以 2241214 或者2241213为基准来备份,若是数据文件和文件头的scn 不一致我们应该取这几个值中最小的一个。
在主库上进行增量备份:
RMAN> run
{
allocate channel d1 type disk;
allocate channel d2 type disk;
backup as compressed backupset incremental from SCN 1024824 database format '/u01/app/oracle/backup/standby_%d_%T_%U.bak' ;
release channel d1;
release channel d2;
}
using target database control file instead of recovery catalog
allocated channel: d1
channel d1: SID=139 device type=DISK
allocated channel: d2
channel d2: SID=30 device type=DISK
Starting backup at 19-SEP-18
channel d1: starting compressed full datafile backup set
channel d1: specifying datafile(s) in backup set
input datafile file number=00003 name=/u01/app/oracle/oradata/ogg2/undotbs01.dbf
channel d1: starting piece 1 at 19-SEP-18
channel d2: starting compressed full datafile backup set
channel d2: specifying datafile(s) in backup set
input datafile file number=00001 name=/u01/app/oracle/oradata/ogg2/system01.dbf
input datafile file number=00007 name=/u01/app/oracle/oradata/ogg2/test03.dbf
input datafile file number=00009 name=/u01/app/oracle/oradata/ogg2/test05.dbf
input datafile file number=00010 name=/u01/app/oracle/oradata/ogg2/test031.dbf
input datafile file number=00011 name=/u01/app/oracle/oradata/ogg2/test032.dbf
channel d2: starting piece 1 at 19-SEP-18
channel d2: finished piece 1 at 19-SEP-18
piece handle=/u01/app/oracle/backup/standby_OGG2_20180919_1ctdg6a9_1_1.bak tag=FOR STANDBY comment=NONE
channel d2: backup set complete, elapsed time: 00:01:26
channel d2: starting compressed full datafile backup set
channel d2: specifying datafile(s) in backup set
input datafile file number=00002 name=/u01/app/oracle/oradata/ogg2/sysaux01.dbf
input datafile file number=00004 name=/u01/app/oracle/oradata/ogg2/users01.dbf
input datafile file number=00005 name=/u01/app/oracle/oradata/ogg2/test01.dbf
input datafile file number=00006 name=/u01/app/oracle/oradata/ogg2/test02.dbf
input datafile file number=00008 name=/u01/app/oracle/oradata/ogg2/test04.dbf
channel d2: starting piece 1 at 19-SEP-18
channel d1: finished piece 1 at 19-SEP-18
piece handle=/u01/app/oracle/backup/standby_OGG2_20180919_1btdg6a9_1_1.bak tag=FOR STANDBY comment=NONE
channel d1: backup set complete, elapsed time: 00:01:34
channel d1: starting compressed full datafile backup set
channel d1: specifying datafile(s) in backup set
including standby control file in backup set
channel d1: starting piece 1 at 19-SEP-18
channel d1: finished piece 1 at 19-SEP-18
piece handle=/u01/app/oracle/backup/standby_OGG2_20180919_1etdg6d7_1_1.bak tag=FOR STANDBY comment=NONE
channel d1: backup set complete, elapsed time: 00:00:02
channel d2: finished piece 1 at 19-SEP-18
piece handle=/u01/app/oracle/backup/standby_OGG2_20180919_1dtdg6cv_1_1.bak tag=FOR STANDBY comment=NONE
channel d2: backup set complete, elapsed time: 00:00:30
Finished backup at 19-SEP-18
released channel: d1
released channel: d2
进行控制文件的备份:
RMAN> run
{
allocate channel c1 type disk;
backup current controlfile for standby format '/u01/app/oracle/backup/db_%T_%d_%t_%s_%p.ctl';
}2> 3> 4> 5>
released channel: ORA_DISK_1
allocated channel: c1
channel c1: SID=139 device type=DISK
Starting backup at 19-SEP-18
channel c1: starting full datafile backup set
channel c1: specifying datafile(s) in backup set
including standby control file in backup set
channel c1: starting piece 1 at 19-SEP-18
channel c1: finished piece 1 at 19-SEP-18
piece handle=/u01/app/oracle/backup/db_20180919_OGG2_987241142_47_1.ctl tag=TAG20180919T093902 comment=NONE
channel c1: backup set complete, elapsed time: 00:00:01
Finished backup at 19-SEP-18
released channel: c1
将备份端数据启动该nomount进行恢复控制文件,然后启动到mount,在恢复数据文件
[oracle@standby backup]$ rman target /
Recovery Manager: Release 11.2.0.4.0 - Production on Wed Sep 19 09:55:15 2018
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
connected to target database: OGG2 (not mounted)
RMAN> restore standby controlfile to '/u01/app/oracle/flash_recovery_area/ogg1/control02.ctl' from '/u01/app/oracle/backup/db_20180919_OGG2_987241142_47_1.ctl';
Starting restore at 19-SEP-18
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=125 device type=DISK
channel ORA_DISK_1: restoring control file
channel ORA_DISK_1: restore complete, elapsed time: 00:00:01
Finished restore at 19-SEP-18
RMAN> alter database mount;
database mounted
released channel: ORA_DISK_1
二、 恢复备库,注意这个数据文件是主库中的数据文件名称,要先在数据库中将其修改成备库的数据库名称
RMAN> report schema
2> ;
RMAN-06139: WARNING: control file is not current for REPORT SCHEMA
Report of database schema for database with db_unique_name STANDBY
RMAN> report schema;
Starting implicit crosscheck backup at 19-SEP-18
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=139 device type=DISK
Finished implicit crosscheck backup at 19-SEP-18
Starting implicit crosscheck copy at 19-SEP-18
using channel ORA_DISK_1
Crosschecked 2 objects
Finished implicit crosscheck copy at 19-SEP-18
searching for all files in the recovery area
cataloging files...
no files cataloged
RMAN-06139: WARNING: control file is not current for REPORT SCHEMA
Report of database schema for database with db_unique_name OGG1
List of Permanent Datafiles
===========================
File Size(MB) Tablespace RB segs Datafile Name
---- -------- -------------------- ------- ------------------------
1 0 SYSTEM *** /u01/app/oracle/oradata/ogg1/system01.dbf
2 0 SYSAUX *** /u01/app/oracle/oradata/ogg1/sysaux01.dbf
3 0 UNDOTBS1 *** /u01/app/oracle/oradata/ogg1/undotbs01.dbf
4 0 USERS *** /u01/app/oracle/oradata/ogg1/users01.dbf
5 10 TEST *** /u01/app/oracle/oradata/ogg1/test01.dbf
6 0 TEST *** /u01/app/oracle/oradata/ogg1/test02.dbf
7 0 TEST *** /u01/app/oracle/oradata/ogg1/test03.dbf
8 10 TEST2 *** /u01/app/oracle/oradata/ogg1/test04.dbf
9 10 TEST2 *** /u01/app/oracle/oradata/ogg1/test05.dbf
10 0 TEST *** /u01/app/oracle/oradata/ogg1/test031.dbf
11 10 TEST *** /u01/app/oracle/oradata/ogg1/test032.dbf
List of Temporary Files
=======================
File Size(MB) Tablespace Maxsize(MB) Tempfile Name
---- -------- -------------------- ----------- --------------------
1 20 TEMP 32767 /u01/app/oracle/oradata/ogg1/temp01.dbf
但是备份端的数据文件名称和主库的数据文件名称和路径不一致:
[oracle@standby ogg1]$ ll
total 2549432
-rw-r----- 1 oracle oinstall 10043392 Sep 19 10:01 control01.ctl
-rw-r----- 1 oracle oinstall 52429312 Sep 14 13:44 redo01.log
-rw-r----- 1 oracle oinstall 52429312 Sep 14 13:44 redo02.log
-rw-r----- 1 oracle oinstall 52429312 Sep 14 13:44 redo03.log
-rw-r----- 1 oracle oinstall 52429312 Sep 19 10:01 standby01.log
-rw-r----- 1 oracle oinstall 52429312 Sep 19 09:29 standby02.log
-rw-r----- 1 oracle oinstall 52429312 Sep 14 13:25 standby03.log
-rw-r----- 1 oracle oinstall 52429312 Sep 14 13:25 standby04.log
-rw-r----- 1 oracle oinstall 629153792 Sep 19 09:29 sysaux.dbf
-rw-r----- 1 oracle oinstall 734011392 Sep 19 09:29 system.dbf
-rw-r----- 1 oracle oinstall 10493952 Sep 19 09:29 test01.dbf
-rw-r----- 1 oracle oinstall 10493952 Sep 19 09:29 test032.dbf
-rw-r----- 1 oracle oinstall 10493952 Sep 19 09:29 test04.dbf
-rw-r----- 1 oracle oinstall 10493952 Sep 19 09:29 test05.dbf
-rw-r----- 1 oracle oinstall 823140352 Sep 19 09:29 undotbs1.dbf
-rw-r----- 1 oracle oinstall 5251072 Sep 19 09:29 users.dbf
[oracle@standby ogg1]$ ls
control01.ctl redo02.log standby01.log standby03.log sysaux.dbf test01.dbf test04.dbf undotbs1.dbf
redo01.log redo03.log standby02.log standby04.log system.dbf test032.dbf test05.dbf users.dbf
[oracle@standby ogg2]$ ls
temp01.dbf test02.dbf test031.dbf test03.dbf
所以要先进行:
#####如果想避免出现这种情况的话,在进行异地备份恢复的时候,在进行数据文件命名的时候严格按照主库的数据文件名称来定义######
[oracle@standby ogg2]$ mv * ../ogg1
[oracle@standby ogg2]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Wed Sep 19 11:09:48 2018
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> alter database rename file '/u01/app/oracle/oradata/ogg2/test02.dbf' to '/u01/app/oracle/oradata/ogg1/test02.dbf';
Database altered.
SQL> alter database rename file '/u01/app/oracle/oradata/ogg2/test03.dbf' to '/u01/app/oracle/oradata/ogg1/test03.dbf';
Database altered.
SQL> alter database rename file '/u01/app/oracle/oradata/ogg2/temp01.dbf' to '/u01/app/oracle/oradata/ogg1/temp01.dbf';
Database altered.
SQL> alter database rename file '/u01/app/oracle/oradata/ogg2/test031.dbf' to '/u01/app/oracle/oradata/ogg1/test031.dbf';
Database altered.
SQL> alter system set standby_file_management=auto scope=both sid='*';
System altered.
SQL> alter system set standby_file_management=manual scope=both;
System altered.
SQL> alter database rename file '/u01/app/oracle/oradata/ogg1/system01.dbf' to '/u01/app/oracle/oradata/ogg1/system.dbf';
Database altered.
SQL> alter database rename file '/u01/app/oracle/oradata/ogg1/sysaux01.dbf' to '/u01/app/oracle/oradata/ogg1/sysaux.dbf';
Database altered.
SQL> alter database rename file '/u01/app/oracle/oradata/ogg1/users01.dbf' to '/u01/app/oracle/oradata/ogg1/users.dbf';
Database altered.
SQL> alter database rename file '/u01/app/oracle/oradata/ogg1/undotbs01.dbf' to '/u01/app/oracle/oradata/ogg1/undotbs1.dbf';
Database altered.
SQL> alter system set standby_file_management=auto scope=both sid='*';
System altered.
RMAN> report schema;
RMAN-06139: WARNING: control file is not current for REPORT SCHEMA
Report of database schema for database with db_unique_name STANDBY
List of Permanent Datafiles
===========================
File Size(MB) Tablespace RB segs Datafile Name
---- -------- -------------------- ------- ------------------------
1 700 SYSTEM *** /u01/app/oracle/oradata/ogg1/system.dbf
2 600 SYSAUX *** /u01/app/oracle/oradata/ogg1/sysaux.dbf
3 785 UNDOTBS1 *** /u01/app/oracle/oradata/ogg1/undotbs1.dbf
4 5 USERS *** /u01/app/oracle/oradata/ogg1/users.dbf
5 10 TEST *** /u01/app/oracle/oradata/ogg1/test01.dbf
6 10 TEST *** /u01/app/oracle/oradata/ogg1/test02.dbf
7 10 TEST *** /u01/app/oracle/oradata/ogg1/test03.dbf
8 10 TEST2 *** /u01/app/oracle/oradata/ogg1/test04.dbf
9 10 TEST2 *** /u01/app/oracle/oradata/ogg1/test05.dbf
10 10 TEST *** /u01/app/oracle/oradata/ogg1/test031.dbf
11 10 TEST *** /u01/app/oracle/oradata/ogg1/test032.dbf
List of Temporary Files
=======================
File Size(MB) Tablespace Maxsize(MB) Tempfile Name
---- -------- -------------------- ----------- --------------------
1 20 TEMP 32767 /u01/app/oracle/oradata/ogg1/temp01.dbf
RMAN> recover database noredo;
Starting recover at 19-SEP-18
using channel ORA_DISK_1
channel ORA_DISK_1: starting incremental datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
destination for restore of datafile 00001: /u01/app/oracle/oradata/ogg1/system.dbf
destination for restore of datafile 00002: /u01/app/oracle/oradata/ogg1/sysaux.dbf
destination for restore of datafile 00004: /u01/app/oracle/oradata/ogg1/users.dbf
destination for restore of datafile 00006: /u01/app/oracle/oradata/ogg1/test02.dbf
destination for restore of datafile 00008: /u01/app/oracle/oradata/ogg1/test04.dbf
destination for restore of datafile 00010: /u01/app/oracle/oradata/ogg1/test031.dbf
channel ORA_DISK_1: reading from backup piece /u01/app/oracle/backup/standby_OGG2_20180919_1gtdg6n4_1_1.bak
channel ORA_DISK_1: piece handle=/u01/app/oracle/backup/standby_OGG2_20180919_1gtdg6n4_1_1.bak tag=TAG20180919T093948
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:08
channel ORA_DISK_1: starting incremental datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
destination for restore of datafile 00003: /u01/app/oracle/oradata/ogg1/undotbs1.dbf
destination for restore of datafile 00005: /u01/app/oracle/oradata/ogg1/test01.dbf
destination for restore of datafile 00007: /u01/app/oracle/oradata/ogg1/test03.dbf
destination for restore of datafile 00009: /u01/app/oracle/oradata/ogg1/test05.dbf
destination for restore of datafile 00011: /u01/app/oracle/oradata/ogg1/test032.dbf
channel ORA_DISK_1: reading from backup piece /u01/app/oracle/backup/standby_OGG2_20180919_1htdg6n4_1_1.bak
channel ORA_DISK_1: piece handle=/u01/app/oracle/backup/standby_OGG2_20180919_1htdg6n4_1_1.bak tag=TAG20180919T093948
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:01
Finished recover at 19-SEP-18
RMAN> exit
Recovery Manager complete.
[oracle@standby dbs]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Wed Sep 19 11:21:20 2018
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> col name for a100
set linesize 9999 pagesize 9999
SELECT dest_id,THREAD#,NAME,sequence#,archived,applied,a.NEXT_CHANGE# FROM v$archived_log a
WHERE a.sequence# >= 40
AND resetlogs_change# =(SELECT d.RESETLOGS_CHANGE# FROM v$database d)
ORDER BY a.THREAD#,aSQL> SQL> .sequence#,a.dest_id;
2 3 4
DEST_ID THREAD# NAME SEQUENCE# ARC APPLIED NEXT_CHANGE#
---------- ---------- ---------------------------------------------------------------------------------------------------- ---------- --- --------- ------------
2 1 /u01/arch/phy1/1_173_981738248.arc 173 YES NO 1027491
2 1 /u01/arch/phy1/1_174_981738248.arc 174 YES NO 1027693
1 1 /u01/arch/phy1/1_175_981738248.arc 175 YES NO 1027993
1 1 /u01/arch/phy1/1_176_981738248.arc 176 YES NO 1031524
1 1 /u01/arch/phy1/1_177_981738248.arc 177 YES NO 1032805
1 1 /u01/arch/phy1/1_178_981738248.arc 178 YES NO 1033214
6 rows selected.
SQL> alter database recover managed standby database using current logfile disconnect from session;
Database altered.
SQL> col name for a100
set linesize 9999 pagesize 9999
SELECT dest_id,THREAD#,NAME,sequence#,archived,applied,a.NEXT_CHANGE# FROM v$archived_log a
WHERE a.sequence# >= 40
AND resetlogs_change# =(SELECT d.RESETLOGS_CHANGE# FROM v$database d)
ORDER BY a.THREAD#,aSQL> SQL> 2 3 4 .sequence#,a.dest_id;
DEST_ID THREAD# NAME SEQUENCE# ARC APPLIED NEXT_CHANGE#
---------- ---------- ---------------------------------------------------------------------------------------------------- ---------- --- --------- ------------
2 1 /u01/arch/phy1/1_173_981738248.arc 173 YES YES 1027491
2 1 /u01/arch/phy1/1_174_981738248.arc 174 YES YES 1027693
1 1 /u01/arch/phy1/1_175_981738248.arc 175 YES YES 1027993
1 1 /u01/arch/phy1/1_176_981738248.arc 176 YES YES 1031524
1 1 /u01/arch/phy1/1_177_981738248.arc 177 YES YES 1032805
1 1 /u01/arch/phy1/1_178_981738248.arc 178 YES IN-MEMORY 1033214
6 rows selected.
SQL> select * from v$archive_gap;
no rows selected
四、 备库read only 模式打开
22:41:41 SQL> alter database recover managed standby database cancel;
数据库已更改。
已用时间: 00: 00: 01.00
22:43:40 SQL> alter database open;
数据库已更改
已用时间: 00: 00: 00.22
22:43:45 SQL> alter database recover managed standby database using current logfile disconnect from session;
数据库已更改。
adg的archive出现gap,使用增量恢复的方式进行恢复adg,RMAN-06094: datafile 1 must be restored相关推荐
- Linux系统快照一键备份恢复、不同机器恢复、增量备份恢复
Linux系统快照一键备份恢复.不同机器恢复.增量备份恢复 前言 由于前段时间在做一个自动化部署开发环境的项目需要重复安装多种服务以及中间件,但是生产环境的服务器不像自己的虚拟机可以使用快照,如果直接 ...
- 备份恢复:如何让xtrabackup恢复速度提升20倍?
简介 Xtrabackup是由percona开源的免费数据库热备份软件,它能对InnoDB数据库和XtraDB存储引擎数据库进行非阻塞的备份,其具备以下一些优点: 1)备份速度快,物理备份可靠 ...
- Oracle 知识篇+RMAN带库备份恢复/带库全备恢复/带库0级备份恢复操作概要
说明:本文为Oracle RMAN带库备份恢复/带库全备恢复/带库0级备份恢复操作概要 温馨提示:如果您发现本文哪里写的有问题或者有更好的写法请留言或私信我进行修改优化 ①带库备份 rman targ ...
- Linux文件系统恢复(数据误删恢复)
Linux文件系统恢复(数据误删恢复) 文章目录 Linux文件系统恢复(数据误删恢复) inode与block 用户通过文件名打开文件时,系统内部的过程 查看文件对应的inode号码有两种方式 用s ...
- mysql数据库恢复策略_数据库系统恢复策略概述
1 前言 尽管计算机系统的可靠性在不断提高,数据库系统中也采用了很多措施和方法保证数据库系统的正确运行,但仍不可避免系统出现这样或那样的错误,导致数据库数据丢失或破坏. 所以,数据库系统必须采取相应的 ...
- SMO学习笔记(二)——还原(恢复)篇之完整恢复
SQLSERVER2005恢复介绍: 三种恢复模式 (一).简单恢复模式 事务日志被自动截断,不能使用日志文件进行恢复. (二).完整恢复模式 保留所有操作的完整事务日 ...
- oracle日志备份少数据库,oracle 账号锁定日志Oracle数据库全量备份恢复和部分备份恢复...
Oracle数据库全量备份恢复和部分备份恢复 今天又遇到了Oracle数据库序列的问题,索性来个全库的备份和恢复.如下 imp/exp 方式 表模式备份: oracle@sencloudServe ...
- iphone彻底删除照片如何恢复_如何把删除的照片恢复?轻松解决恢复问题!
如何把删除的照片恢复?轻松解决恢复问题!使用手机的时候,照片可是我们手机中重要的数据,很对人换手机也舍不得删除了以前的照片,有时候会误删了一些手机照片也是常有的事情,那么我们想要找回被删除手机照片应该 ...
- outlook从服务器中恢复已删除项目,Exchange 恢复已删除项目
Exchange转储程序机制 Exchange使用转储程序(dumpster)机制,在将邮件删除后(指永久删除,并非删除至"已删除邮箱"),或将邮箱删除后,并不立即从数据库删除,而 ...
最新文章
- mongoose的populate
- linux完整面授视频,Linux面授实战
- python 清空所有对象_学习python第38天
- python 表名代码编码格式_14行代码示例讲解:教你解决python上传图片限制格式问题...
- 灵山奇缘服务器维护,灵山奇缘1月8日更新了什么 灵山奇缘1月8日更新维护内容一览...
- GDAL写入FileGDB中文属性乱码问题
- Debian 下配置ssh
- 主函数是c语言的入口,代码逆向(一)——寻找main函数入口
- Matlab实现单(双)极性(不)归零码
- (Matlab实现)基于蒙特卡洛模拟的大规模电动车充电模型
- 量子计算机物理学,使用量子计算机来测试物理学的基本原理
- echart各种显示数据的格式化
- 视频 | 皖南川藏线自驾游
- 输入的魔法师,cherry机械键盘介绍
- amazon开发者申请,pii权限申请
- 【就是这么简单】系列
- 循环冗余校验码CRC原理和实例
- 集线器、交换机、路由器之间的关系(清晰明了)
- 什么是ANC主动降噪技术?
- singer页面点击歌手singer是跳转到singer-detail的设置
热门文章
- 鸿蒙归蝶的反弹,诛仙前传鸿蒙副本任务详细攻略解读
- java 随机字母_Java基础之随机生成数字和字母
- kafka eagel的使用
- Redis的zset结构跳表
- 8 应用服务器性能优化
- MyEclipse快捷键大全(转自豆瓣)
- python实现批量提取指定文件夹下同类型文件
- python获取涨停股票_摸索:半天完成Python获取数据,建立每日涨停股票池。
- 魔兽世界最新服务器排行榜,wow国服服务器排行榜:十大平衡服已全面解锁 | TG魔兽世界专区...
- 学习并行计算(CUDA Python)-1-初尝试