一, 故障模拟
![39d1558a93ed2c775c117528bd0b4766.png](https://img-blog.csdnimg.cn/img_convert/39d1558a93ed2c775c117528bd0b4766.png)
控制文件损坏
![c3736f8fa9ca4e87ebaa4cdf21a7b6cc.png](https://img-blog.csdnimg.cn/img_convert/c3736f8fa9ca4e87ebaa4cdf21a7b6cc.png)
发现关闭不了
强制关闭
![c3855ff6a06df6a6dbe4d53e4004289e.png](https://img-blog.csdnimg.cn/img_convert/c3855ff6a06df6a6dbe4d53e4004289e.png)
故障恢复
![26f620e657c5f15ce29936a42c53f359.png](https://img-blog.csdnimg.cn/img_convert/26f620e657c5f15ce29936a42c53f359.png)
发现已经执行到mont阶段,因为这个不依靠控制文件
进入整段日志 cd /u01/app/oracle/diag/rdbms/orcl/orcl/trace/
![c48792b64f5d9a35799f60853e24a603.png](https://img-blog.csdnimg.cn/img_convert/c48792b64f5d9a35799f60853e24a603.png)
查看alert_orcl.log日志
vim alert_orcl.log
![eaa8a20d834b4b588c008c9db18c428d.png](https://img-blog.csdnimg.cn/img_convert/eaa8a20d834b4b588c008c9db18c428d.png)
报错信息
1 ORA-00210: cannot openthe specified control file2 ORA-00202: control file: '/oradata/orcl/control01.ctl'
3 ORA-27037: unable to obtain file status
处理方法一:
复制一个文件 从上一个文件复制一个过来
![45b5a49738288e459b9911c79a73e5ea.png](https://img-blog.csdnimg.cn/img_convert/45b5a49738288e459b9911c79a73e5ea.png)
处理方法二:
配置文件删除一个
![657a4193b3fdc9448d11219a19eaa417.png](https://img-blog.csdnimg.cn/img_convert/657a4193b3fdc9448d11219a19eaa417.png)
删除少了的就行
启动:
![967457a318ca6ed5e39d6dcd46c8c00d.png](https://img-blog.csdnimg.cn/img_convert/967457a318ca6ed5e39d6dcd46c8c00d.png)
二, 重新创建控制文件
损坏的时候还是可以查查询的
查看数据文件
![3680d6d7cd61d1da826c273021d251ed.png](https://img-blog.csdnimg.cn/img_convert/3680d6d7cd61d1da826c273021d251ed.png)
查看日志文件地址
![78ee8c465972a5a349777fe18845c37e.png](https://img-blog.csdnimg.cn/img_convert/78ee8c465972a5a349777fe18845c37e.png)
备份: alter database backup controlfile to trace
查看文本文件路径:
select tracefile from v$process where addr in (select paddr from v$session where sid in (select sid from v$mystat));
故障模拟
控制文件移除:
/oradata/orcl/control01.ctl','/u01/app/oracle/fast_recovery_area/orcl/control02.ctl','/u01/app/oracle/control03.ctl','/u01/app/oracle/control04.ctl
![4721dcf1f050722ad34a0a3b2ba2a8b1.png](https://img-blog.csdnimg.cn/img_convert/4721dcf1f050722ad34a0a3b2ba2a8b1.png)
修复:
查看刚刚备份文件的信息
![99ccf5c5b4deb1f3ea7fe8b493e4ffb5e9d.jpg](https://oscimg.oschina.net/oscnet/99ccf5c5b4deb1f3ea7fe8b493e4ffb5e9d.jpg)
![19a897aa5ebf1a232ce69b9a83209701b5e.jpg](https://oscimg.oschina.net/oscnet/19a897aa5ebf1a232ce69b9a83209701b5e.jpg)
1 STARTUP NOMOUNT2 CREATE CONTROLFILE REUSE DATABASE "ORCL"RESETLOGS NOARCHIVELOG3 MAXLOGFILES 16
4 MAXLOGMEMBERS 3
5 MAXDATAFILES 100
6 MAXINSTANCES 8
7 MAXLOGHISTORY 292
8 LOGFILE9 GROUP 1 '/oradata/orcl/redo01.log' SIZE 50M BLOCKSIZE 512,
10 GROUP 2 '/oradata/orcl/redo02.log' SIZE 50M BLOCKSIZE 512,
11 GROUP 3 '/oradata/orcl/redo03.log' SIZE 50M BLOCKSIZE 512
12 --STANDBY LOGFILE13 DATAFILE14 '/oradata/orcl/system01.dbf',
15 '/oradata/orcl/sysaux01.dbf',
16 '/oradata/orcl/undotbs01.dbf',
17 '/oradata/orcl/users01.dbf'
18 CHARACTER SET AL32UTF819 ;
View Code
从start到设置字符集那这段截取
进入数据库
![76c1a876a7c5ef6926a3516180a158cd.png](https://img-blog.csdnimg.cn/img_convert/76c1a876a7c5ef6926a3516180a158cd.png)
启动数据库到nomont阶段
startup
执行tarce出来的命令行
![f2cbaf46a2aa118652868e66ff68b14a.png](https://img-blog.csdnimg.cn/img_convert/f2cbaf46a2aa118652868e66ff68b14a.png)
开启数据库
![1303afa54d5ecc1c50172cc22edce16c.png](https://img-blog.csdnimg.cn/img_convert/1303afa54d5ecc1c50172cc22edce16c.png)
查询信息
![8e9642938e3ae9d9879b46ef9a39e4a5.png](https://img-blog.csdnimg.cn/img_convert/8e9642938e3ae9d9879b46ef9a39e4a5.png)
完成恢复
查看控制文件是否存在
![b426b8d75acd052b1ca83e2ab24f3250.png](https://img-blog.csdnimg.cn/img_convert/b426b8d75acd052b1ca83e2ab24f3250.png)