select * from v$controlfile;
调解默认加载的控制文件/多路复用控制文件:基于spfile的
首先:alter system set control_files='/u01/app/oracle/oradata/crab/c ontrol01.ctl',
'/u01/app/oracle/ flash_recovery_area/CRAB/control02.ctl' scope=spfile;
然后:shutdown immediate;关闭数据库
再然后:物理移动文件 cp /u01/app/oracle/oradata/crab/c ontrol01.ctl /u01/app/oracle/ flash_recovery_area/CRAB/control02.ctl
最后:启动实例 打开数据库 show parameter control_file;
控制文件的执行恢复
控制文件部分丢失:
1.关闭数据库shutdown abort
2.复制存在的给丢失的 :
启动数据库 实例启动阶段 nomount阶段
查看控制文件信息 :select name from v$controlfile; 或 show parameter control_files
查看丢失的文件,复制给丢失的 :ho cp ·········
alter database mount;
alter database open;
全部丢失
利用RMAN备份恢复。 前提是你之前备份过控制文件:backup current controlfile;
或利用脚本重建控制文件
shutdown abort
startup nomount
在目录< ho ls /u01/app/oracle/flash_recovery_area/CRAB/backupset/2014_06_30
找到控制文件备份,带ncnnf : o1_mf_ncnnf_TAG20140630T085420_9v1f9xkv_.bkp进入rman : rman target/
RMAN> restore controlfile from '/u01/app/oracle/flash_recovery_area/CRAB/backupset/2014_06_30/o1_mf_ncnnf_TAG20140630T085420_9v1f9xkv_.bkp';
完成之后:
RMAN> alter database mount;
RMAN> recover database;
RMAN> alter database open resetlogs;
重做日志文件多路复用
数据库已更改。
sys@CRAB< alter database add logfile member '/u01/app/oracle/flash_recovery_area/CRAB/redo02.log' to group 2;
数据库已更改。
sys@CRAB< alter database add logfile member '/u01/app/oracle/flash_recovery_area/CRAB/redo03.log' to group 3;
数据库已更改。
添加组:
alter database add logfile
('D:/oracle/product/10.1.0/oradata/orcl/redo06a.log',
'e:/oracle/product/10.1.0/oradata/orcl/redo06b.log') size 10m;
重命名日志文件:
alter database rename file
'D:/oracle/product/10.1.0/oradata/orcl/redo04b.log'
to
'e:/oracle/product/10.1.0/oradata/orcl/redo04b.log';
删除组成员:
alter database drop logfile member
'e:/oracle/product/10.1.0/oradata/orcl/redo04b.log';
删除组:
alter database drop logfile
'e:/oracle/product/10.1.0/oradata/orcl/redo01.log';
/
alter database drop logfile group 1;
清空:
alter database clear logfile
'e:/oracle/product/10.1.0/oradata/orcl/redo01.log';
切换日志:
alter system switch logfile;
alter database open resetlogs; 重建日志文件自动生成3个。
使用alter system switch logfile; 测试是否日志发生了切换。