您的当前位置:首页正文

数据库RMAN不完全恢复

2020-11-09 来源:个人技术集锦

欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入 之前介绍了:Oracle数据库RMAN不完全恢复之基于SCN恢复,本文我们主要介绍一下Oracle数据库RMAN不完全恢复之基于日志序列号恢复的相关知识,希望能够对您有所帮助。 --查看归档日志信息 SQL select

欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入

之前介绍了:Oracle数据库RMAN不完全恢复之基于SCN恢复,本文我们主要介绍一下Oracle数据库RMAN不完全恢复之基于日志序列号恢复的相关知识,希望能够对您有所帮助。

--查看归档日志信息 SQL> select * from t_user;

TEXT --------------------

java_ spring_ spring mvc_

SQL> insert into t_user select 'oracle_' from dual;

1 row created.

SQL> commit;

Commit complete.

SQL> alter system switch logfile;

System altered.

SQL> alter system checkpoint;

System altered.

SQL> select sequence#,name,first_change# from v$archived_log where status='A' order by sequence#;

SEQUENCE# NAME

FIRST_CHANGE#

---------- ---------------------------------------------------------------------------------------------------- ------------- 1 /oracle/10g/oracle/log/archive_log/archive_1_1_760487088.arclog 1214497 1 /oracle/10g/oracle/log/archive_log2/archive_1_1_760487088.arclog 1214497 1 /oracle/10g/oracle/product/10.2.0/db_1/flash_recovery_area/ORALIFE/archivelog/2011_08_29/o1_mf_1_1_7 1214498 5q9bh9d_.arc 1 /oracle/10g/oracle/log/archive_log/archive_1_1_760487985.arclog 1214498 1 /oracle/10g/oracle/log/archive_log2/archive_1_1_760487985.arclog 1214498 1 /oracle/10g/oracle/product/10.2.0/db_1/flash_recovery_area/ORALIFE/archivelog/2011_08_29/o1_mf_1_1_7 1214497 5q95ksf_.arc 6 rows selected.

SQL> insert into t_user select 'oracle_seq3' from dual;

1 row created.

SQL> commit;

Commit complete.

SQL> alter system switch logfile;

--生成日志序列号为2的归档日志

System altered.

SQL> alter system checkpoint;

System altered.

SQL> select sequence#,name,first_change# from v$archived_log where status='A' order by sequence#;

SEQUENCE# NAME

FIRST_CHANGE#

---------- ---------------------------------------------------------------------------------------------------- ------------- 1 /oracle/10g/oracle/log/archive_log/archive_1_1_760487088.arclog 1214497 1 /oracle/10g/oracle/log/archive_log2/archive_1_1_760487088.arclog 1214497 1 /oracle/10g/oracle/product/10.2.0/db_1/flash_recovery_area/ORALIFE/archivelog/2011_08_29/o1_mf_1_1_7 1214497 5q95ksf_.arc 1 /oracle/10g/oracle/log/archive_log/archive_1_1_760487985.arclog 1214498 1 /oracle/10g/oracle/log/archive_log2/archive_1_1_760487985.arclog 1214498 1 /oracle/10g/oracle/product/10.2.0/db_1/flash_recovery_area/ORALIFE/archivelog/2011_08_29/o1_mf_1_1_7 1214498 5q9bh9d_.arc 2 /oracle/10g/oracle/log/archive_log/archive_1_2_760487985.arclog 1216167 SEQUENCE# NAME FIRST_CHANGE#

---------- ---------------------------------------------------------------------------------------------------- ------------- 2 /oracle/10g/oracle/log/archive_log2/archive_1_2_760487985.arclog 1216167 2 /oracle/10g/oracle/product/10.2.0/db_1/flash_recovery_area/ORALIFE/archivelog/2011_08_29/o1_mf_1_2_7 1216167 5q9cvt1_.arc 9 rows selected.

SQL> insert into t_user select 'oracle_seq3_act' from dual;

1 row created.

SQL> commit;

Commit complete.

SQL> alter system switch logfile;

--生成日志序列号为3的归档日志

System altered.

SQL> alter system checkpoint;

System altered.

SQL> select sequence#,name,first_change# from v$archived_log where status='A' order by sequence#;

SEQUENCE# NAME

FIRST_CHANGE#

---------- ---------------------------------------------------------------------------------------------------- ------------- 1 /oracle/10g/oracle/log/archive_log/archive_1_1_760487088.arclog 1214497 1 /oracle/10g/oracle/log/archive_log2/archive_1_1_760487088.arclog 1214497 1 /oracle/10g/oracle/product/10.2.0/db_1/flash_recovery_area/ORALIFE/archivelog/2011_08_29/o1_mf_1_1_7 1214497 5q95ksf_.arc 1 /oracle/10g/oracle/log/archive_log/archive_1_1_760487985.arclog 1214498 1 /oracle/10g/oracle/log/archive_log2/archive_1_1_760487985.arclog 1214498 1 /oracle/10g/oracle/product/10.2.0/db_1/flash_recovery_area/ORALIFE/archivelog/2011_08_29/o1_mf_1_1_7 1214498 5q9bh9d_.arc 2 /oracle/10g/oracle/log/archive_log/archive_1_2_760487985.arclog 1216167 SEQUENCE# NAME FIRST_CHANGE# ---------- ---------------------------------------------------------------------------------------------------- ------------- 2 /oracle/10g/oracle/log/archive_log2/archive_1_2_760487985.arclog 1216167 2 /oracle/10g/oracle/product/10.2.0/db_1/flash_recovery_area/ORALIFE/archivelog/2011_08_29/o1_mf_1_2_7 1216167 5q9cvt1_.arc 3 /oracle/10g/oracle/log/archive_log/archive_1_3_760487985.arclog 1216186 3 /oracle/10g/oracle/log/archive_log2/archive_1_3_760487985.arclog 1216186 3 /oracle/10g/oracle/product/10.2.0/db_1/flash_recovery_area/ORALIFE/archivelog/2011_08_29/o1_mf_1_3_7 1216186 5q9f4d6_.arc 12 rows selected.

--恢复到日志序列号为3时的状态

[oracle@localhost ~]$ rman target sys/oracle@oralife nocatalog RMAN> run { startup force mount;

set until sequence=3;

restore database;

recover database;

sql 'alter database open resetlogs';

}

--查看,可见不包括日志序列号为3的归档日志信息(oracle_seq3_act),即恢复到日志序列号为2的归档日志

SQL> conn sys/oracle@oralife as sysdba Connected.

SQL> select * from t_user;

TEXT

--------------------

java_

spring_

oracle_

oracle_seq3

spring mvc_

显示全文