Oracle启动后对控制文件的依赖
2009-06-16 11:50:49 来源:WEB开发网今天测试的时候纠正了一个错误的印象,一直认为如果当前控制文件被误删除,会导致实例关闭。 而实际上,Oracle并不会结束当前的实例:
SQL> show parameter control_files
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
control_files string /u01/oracle/oradata/db01/contr
ol01.ctl, /u01/oracle/oradata/
db01/control02.ctl, /u01/oracl
e/oradata/db01/control03.ctl
SQL> select * from dual;
D
-
X
SQL> host
oracle:/home/oracle> cd /u01/oracle/oradata/db01
oracle:/u01/oracle/oradata/db01> ls -l *.ctl
-rw-r----- 1 oracle dba 9748480 May 24 12:55 control01.ctl
-rw-r----- 1 oracle dba 9748480 May 24 12:55 control02.ctl
-rw-r----- 1 oracle dba 9748480 May 24 12:55 control03.ctl
oracle:/u01/oracle/oradata/db01> rm control02.ctl
oracle:/u01/oracle/oradata/db01> exit
exit
SQL> select * from dual;
D
-
X
SQL> select instance_name, status from v$instance;
INSTANCE_NAME STATUS
---------------- ------------
db01 OPEN
SQL> alter system checkpoint;
System altered.
SQL> select instance_name, status from v$instance;
INSTANCE_NAME STATUS
---------------- ------------
db01 OPEN
SQL> alter system switch logfile;
System altered.
SQL> select instance_name, status from v$instance;
INSTANCE_NAME STATUS
---------------- ------------
db01 OPEN
SQL> col name format a50
SQL> select * from v$controlfile;
STATUS NAME IS_ BLOCK_SIZE FILE_SIZE_BLKS
------- -------------------------------------------------- --- ---------- --------------
/u01/oracle/oradata/db01/control01.ctl NO 16384 594
/u01/oracle/oradata/db01/control02.ctl NO 16384 594
/u01/oracle/oradata/db01/control03.ctl NO 16384 594
SQL> select * from v$controlfile_record_section;
select * from v$controlfile_record_section
*
ERROR at line 1:
ORA-00210: cannot open the specified control file
ORA-00202: control file: '/u01/oracle/oradata/db01/control02.ctl'
ORA-27041: unable to open file
Linux Error: 2: No such file or directory
Additional information: 3
SQL> select * from v$controlfile;
STATUS NAME IS_ BLOCK_SIZE FILE_SIZE_BLKS
------- -------------------------------------------------- --- ---------- --------------
/u01/oracle/oradata/db01/control01.ctl NO 16384 594
/u01/oracle/oradata/db01/control02.ctl NO 16384 594
/u01/oracle/oradata/db01/control03.ctl NO 16384 594
更多精彩
赞助商链接