用rman恢复,current redo 日志损坏的情况
1、做全库备份
RMAN> run{
allocate channel c1 type disk maxpiecesize=500m;
backup current controlfile format '+dgasm/backup/haozg/ctl_%d_%s';
backup full database format '+dgasm/backup/haozg/db_%d_%s_%p_%t';
release channel c1;
}2> 3> 4> 5> 6>
released channel: ORA_DISK_1
allocated channel: c1
channel c1: SID=19 device type=DISK
Starting backup at 02-JUL-12
channel c1: starting full datafile backup set
channel c1: specifying datafile(s) in backup set
including current control file in backup set
channel c1: starting piece 1 at 02-JUL-12
channel c1: finished piece 1 at 02-JUL-12
piece handle=+DGASM/backup/haozg/ctl_ora11_57 tag=TAG20120702T110101 comment=NONE
channel c1: backup set complete, elapsed time: 00:00:03
Finished backup at 02-JUL-12
Starting backup at 02-JUL-12
channel c1: starting full datafile backup set
channel c1: specifying datafile(s) in backup set
input datafile file number=00001 name=+DGASM/ora11/datafile/system.257.785186755
input datafile file number=00002 name=+DGASM/ora11/datafile/sysaux.258.785186845
input datafile file number=00003 name=+DGASM/ora11/datafile/undotbs1.259.785186901
input datafile file number=00004 name=+DGASM/ora11/datafile/users.272.787487359
channel c1: starting piece 1 at 02-JUL-12
channel c1: finished piece 1 at 02-JUL-12
piece handle=+DGASM/backup/haozg/db_ora11_58_1_787575668 tag=TAG20120702T110107 comment=NONE
channel c1: starting piece 2 at 02-JUL-12
channel c1: finished piece 2 at 02-JUL-12
piece handle=+DGASM/backup/haozg/db_ora11_58_2_787575668 tag=TAG20120702T110107 comment=NONE
channel c1: backup set complete, elapsed time: 00:01:10
channel c1: starting full datafile backup set
channel c1: specifying datafile(s) in backup set
including current control file in backup set
including current SPFILE in backup set
channel c1: starting piece 1 at 02-JUL-12
channel c1: finished piece 1 at 02-JUL-12
piece handle=+DGASM/backup/haozg/db_ora11_59_1_787575738 tag=TAG20120702T110107 comment=NONE
channel c1: backup set complete, elapsed time: 00:00:02
Finished backup at 02-JUL-12
released channel: c1
RMAN>
2、做操作,让不同的操作分布在不同的归档日志文件中,并且检查日志情况和检查点情况
SQL> select first_change#,next_change#,group#,sequence#,status from v$log;
FIRST_CHANGE# NEXT_CHANGE# GROUP# SEQUENCE# STATUS
------------- ------------ ---------- ---------- ----------------
999200 999353 1 7 INACTIVE
999353 999426 2 8 INACTIVE
999426 2.8147E+14 3 9 CURRENT
SQL> create table test22(aab001 varchar(15),aab003 varchar(20));
Table created.
SQL> insert into test22 values ('soft','0001');
1 row created.
SQL> /
1 row created.
SQL> /
1 row created.
SQL> commit;
Commit complete.
SQL> select * from test22;
AAB001 AAB003
--------------- --------------------
soft 0001
soft 0001
soft 0001
SQL> alter system switch logfile;
System altered.
SQL> select first_change#,next_change#,group#,sequence#,status from v$log;
FIRST_CHANGE# NEXT_CHANGE# GROUP# SEQUENCE# STATUS
------------- ------------ ---------- ---------- ----------------
1000076 2.8147E+14 1 10 CURRENT
999353 999426 2 8 INACTIVE
999426 1000076 3 9 ACTIVE
SQL> create table test33(aab001 number,aab004 varchar2(19));
Table created.
SQL> insert into test33 values(1,'zhang');
1 row created.
SQL> /.
1 row created.
SQL> /
1 row created.
SQL> commit;
Commit complete.
SQL> select * from test33;
AAB001 AAB004
---------- -------------------
1 zhang
1 zhang
1 zhang
SQL> alter system switch logfile;
System altered.
SQL> select first_change#,next_change#,group#,sequence#,status from v$log;
FIRST_CHANGE# NEXT_CHANGE# GROUP# SEQUENCE# STATUS
------------- ------------ ---------- ---------- ----------------
1000076 1000117 1 10 ACTIVE
1000117 2.8147E+14 2 11 CURRENT
999426 1000076 3 9 ACTIVE
SQL> create table c_test(aac001 varchar2(10),name varchar2(13));
Table created.
SQL> insert into c_test values('1392027','haozg');
1 row created.
SQL> /
1 row created.
SQL> /.
1 row created.
SQL> /
1 row created.
SQL> commit;
Commit complete.
SQL> select * from c_test;
AAC001 NAME
---------- -------------
1392027 haozg
1392027 haozg
1392027 haozg
1392027 haozg
SQL> select first_change#,next_change#,group#,sequence#,status from v$log;
FIRST_CHANGE# NEXT_CHANGE# GROUP# SEQUENCE# STATUS
------------- ------------ ---------- ---------- ----------------
1000076 1000117 1 10 ACTIVE
1000117 2.8147E+14 2 11 CURRENT
999426 1000076 3 9 ACTIVE
3、shutdown abort
SQL> shutdown abort;
Oracle instance shut down.