Org
You s Org a Pedia c Szh Webcams H0edsearch2searchH
searchsesearchrc Hotgirlsfilm 5 Org % Org EsearchF7 Webcams B0
E Hotgirlsfilm %search1 Org C0search2search%C Given %D Hotgirlsfilm %C1%EB Hotgirlsfilm 5
%
E Given Fa%B0
E0searchD Hotgirlsfilm % Webcams 0searchCsearch%D Hotgirlsfilm %B Pedia %www%2E65jjj%2Econ1searchB3
C9% Webcams 8searchC Given % You C%A8searchB Given %film%2Eylx88%2Ecn+视频A You C
%BF2 Given Hsearcht You irl Webcams fisearchm Given Vsa Hotgirlsfilm c Szh l Webcams e Pedia rsearchh Org 0% Szh 0 Pedia Csearch% Webcams F You C Pedia % Pedia 9 You B Given %search5 Webcams C
%search2 You C2%searchDsearch2search% Org 5% Pedia E Webcams BD%searchCC Webcams %search6 You Csearch% Hotgirlsfilm D Szh D
% Hotgirlsfilm 8%search6%00searchB3%%C8%CB%D1%FD+%A4%DE%A4%CA%A4%AB%A3%FC%C6%DF%9E%81%CE%E86
vsearchdt情色大帝罗科与豪乳美女KLK:性奴隶isearchl Given f Org l You Org Wsearchbc
msearch Org ssearcha You cAsia+Uncensored+Section+%7C+%E4%BA%9A%E6%B4%B2%E6%97%A0%E7%A0%81%E5%8C%BA%28%E5%A4%A7%E4%BA%8E500M%29+asearchsearch Given Hotgirlsfilm search Szh Android%20APK%B9%C5%F3%DD Org search Hotgirlsfilm
结论是:
1.SNAPSHOT CONTROLFILE 不能直接copy成control file,如果数据库已经shutdown
2.可以通过rman,将SNAPSHOT CONTROLFILE 恢复成控制文件
3.如果数据库没有shutdown,可以直接copy SNAPSHOT CONTROLFILE 成控制文件,但仍需要恢复(因为他是旧的)
下面是我的测试步骤:
—————————————
查看snapshot controlfile的备份设置:
RMAN> SHOW SNAPSHOT CONTROLFILE NAME;
RMAN configuration parameters are:
CONFIGURE SNAPSHOT CONTROLFILE NAME TO ‘/u01/ora9a/product/9.2/dbs/snapcf_tt9a.f’; # default
RMAN>
下面模拟控制文件丢失的恢复
$ ls
control01.ctl cwmlite01.dbf indx01.dbf redo02.log temp01.dbf users01.dbf
control02.ctl drsys01.dbf odm01.dbf redo03.log tools01.dbf xdb01.dbf
control03.ctl example01.dbf redo01.log system01.dbf undotbs01.dbf
$ rm cont* –删除控制文件
$ ls
cwmlite01.dbf example01.dbf odm01.dbf redo02.log system01.dbf tools01.dbf users01.dbf
drsys01.dbf indx01.dbf redo01.log redo03.log temp01.dbf undotbs01.dbf xdb01.dbf
$
在控制文件被删除后,数据库还能正常操作:
SQL> insert into test(no) values(4);
1 row created.
SQL> commit;
Commit complete.
SQL> alter system switch logfile;
System altered.
SQL> alter system checkpoint;
System altered.
SQL> /
System altered.
SQL>
SQL> select no,to_char(vdate,’yyyy-mm-dd hh24:mi:ss’) from test;
NO TO_CHAR(VDATE,’YYYY-MM-DDHH24:MI:SS’)
———- ———————————————————
1 2009-02-24 10:16:09
2 2009-02-24 10:25:30
3 2009-02-24 10:26:56
4 2009-02-24 10:30:59
SQL>
重新启动数据库:
SQL> connect /as sysdba
Connected.
SQL> shutdown immediate
ORA-00210: cannot open the specified controlfile
ORA-00202: controlfile: ‘/u01/ora9a/oradata/tt9a/control01.ctl’
ORA-27041: unable to open file
IBM AIX RISC System/6000 Error: 2: No such file or directory
Additional information: 3
没有了控制文件了,shutdown immediate出错
SQL>
SQL> shutdown abort;
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 320569400 bytes
Fixed Size 741432 bytes
Variable Size 285212672 bytes
Database Buffers 33554432 bytes
Redo Buffers 1060864 bytes
ORA-00205: error in identifying controlfile, check alert log for more info
SQL>
没有控制文件,数据库不能mount,现在把SNAPSHOT CONTROLFILE copy到对应目录
$ cp /u01/ora9a/product/9.2/dbs/snapcf_tt9a.f /u01/ora9a/oradata/tt9a/control01.ctl
$ cp /u01/ora9a/oradata/tt9a/control01.ctl /u01/ora9a/oradata/tt9a/control0t.ctl
$ cp /u01/ora9a/oradata/tt9a/control01.ctl /u01/ora9a/oradata/tt9a/control03.ctl
$ ls -lrt /u01/ora9a/oradata/tt9a/contr*
-rw-r—– 1 ora9a dba 1531904 Feb 24 10:36 /u01/ora9a/oradata/tt9a/control01.ctl
-rw-r—– 1 ora9a dba 1531904 Feb 24 10:36 /u01/ora9a/oradata/tt9a/control0t.ctl
-rw-r—– 1 ora9a dba 1531904 Feb 24 10:36 /u01/ora9a/oradata/tt9a/control03.ctl
$
SQL> startup
ORACLE instance started.
Total System Global Area 320569400 bytes
Fixed Size 741432 bytes
Variable Size 285212672 bytes
Database Buffers 33554432 bytes
Redo Buffers 1060864 bytes
ORA-00205: error in identifying controlfile, check alert log for more info
照样不能mount数据库
—————————————-
尝试用rman恢复控制文件:
$ rman target /
Recovery Manager: Release 9.2.0.1.0 – 64bit Production
Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.
connected to target database (not started)
RMAN> startup nomount;
Oracle instance started
Total System Global Area 320569400 bytes
Fixed Size 741432 bytes
Variable Size 285212672 bytes
Database Buffers 33554432 bytes
Redo Buffers 1060864 bytes
RMAN> restore controlfile from ‘/u01/ora9a/product/9.2/dbs/snapcf_tt9a.f’;
Starting restore at 24-FEB-09
using target database controlfile instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=13 devtype=DISK
channel ORA_DISK_1: copied controlfile copy
replicating controlfile
input filename=/u01/ora9a/oradata/tt9a/control01.ctl
output filename=/u01/ora9a/oradata/tt9a/control02.ctl
output filename=/u01/ora9a/oradata/tt9a/control03.ctl
Finished restore at 24-FEB-09
RMAN> alter database mount;
database mounted
RMAN>
ok,用rman可以进行恢复,让数据mount起来
恢复数据库
RMAN> recover database;
Starting recover at 24-FEB-09
using channel ORA_DISK_1
starting media recovery
archive log thread 1 sequence 1 is already on disk as file /u01/ora9a/oradata/tt9a/redo01.log
archive log thread 1 sequence 2 is already on disk as file /u01/ora9a/oradata/tt9a/redo02.log
archive log thread 1 sequence 3 is already on disk as file /u01/ora9a/oradata/tt9a/redo03.log
archive log filename=/u01/ora9a/oradata/tt9a/redo01.log thread=1 sequence=0
archive log filename=/u01/ora9a/oradata/tt9a/redo02.log thread=1 sequence=2
archive log filename=/u01/ora9a/oradata/tt9a/redo03.log thread=1 sequence=3
media recovery complete
Finished recover at 24-FEB-09
RMAN> alter database open;
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of alter db command at 02/24/2009 10:47:36
ORA-01589: must use RESETLOGS or NORESETLOGS option for database open
RMAN> alter database open resetlogs;
database opened
RMAN>
查看先前insert的数据:
SQL> select no,to_char(vdate,’yyyy-mm-dd hh24:mi:ss’) from test;
NO TO_CHAR(VDATE,’YYYY-MM-DDHH24:MI:SS’)
———- ———————————————————
1 2009-02-24 10:16:09
2 2009-02-24 10:25:30
3 2009-02-24 10:26:56
4 2009-02-24 10:30:59
SQL>
数据仍在,恢复成功!
=============================
下面仍是在数据库正常运行情况下,将控制文件删除,仍测试直接copy SNAPSHOT CONTROLFILE 的恢复方式:
SQL> insert into test(no) values(5);
1 row created.
SQL> commit;
Commit complete.
SQL>
SQL> !
$ pwd
/u01/ora9a/oradata/tt9a
$ ls
control01.ctl control0t.ctl example01.dbf redo01.log system01.dbf undotbs01.dbf
control02.ctl cwmlite01.dbf indx01.dbf redo02.log temp01.dbf users01.dbf
control03.ctl drsys01.dbf odm01.dbf redo03.log tools01.dbf xdb01.dbf
$ rm contr*
$ ls
cwmlite01.dbf example01.dbf odm01.dbf redo02.log system01.dbf tools01.dbf users01.dbf
drsys01.dbf indx01.dbf redo01.log redo03.log temp01.dbf undotbs01.dbf xdb01.dbf
$
$ exit
SQL> select * from v$controlfile;
STATUS
———————
NAME
——————————————————————————–
/u01/ora9a/oradata/tt9a/control01.ctl
/u01/ora9a/oradata/tt9a/control02.ctl
/u01/ora9a/oradata/tt9a/control03.ctl
SQL> select dbid from v$database;
select dbid from v$database
*
ERROR at line 1:
ORA-00210: cannot open the specified controlfile
ORA-00202: controlfile: ‘/u01/ora9a/oradata/tt9a/control01.ctl’
ORA-27041: unable to open file
IBM AIX RISC System/6000 Error: 2: No such file or directory
Additional information: 3
SQL>
没有控制文件,查询失败
现在将SNAPSHOT CONTROLFILE copy到对应目录,尝试直接恢复成控制文件:
SQL> !
$ pwd
/u01/ora9a/oradata/tt9a
$ cp /u01/ora9a/product/9.2/dbs/snapcf_tt9a.f control01.ctl
$ cp control01.ctl control02.ctl
$ cp control01.ctl control03.ctl
$ ls -lrt cont*
oYou Hotgirlsfilm Webcams Szh Ca Pedia Org Given Up Hot Girls Film oracle snapcf_.f/ SNAPSHOT CONTROLFILE 什么作用? | ANBOBc Hot Girls Film Film Anal 1
xYou Hotgirlsfilm Webcams Szh Ca Pedia Org Given Up Hot Girls Film oracle snapcf_.f/ SNAPSHOT CONTROLFILE 什么作用? | ANBOBe v Girls x 1 1 Japanese+girl+wet