1、国庆期间,机房服务器意外掉电,数据库启动报错
SQL> startup
ORACLE instance started.
Total System Global Area 5016387584 bytes
Fixed Size 8803072 bytes
Variable Size 1191185664 bytes
Database Buffers 3808428032 bytes
Redo Buffers 7970816 bytes
ORA-00214: control file '/app/oracle/fast_recovery_area/orcl/control02.ctl'
version 5475391 inconsistent with file '/app/oracle/oradata/orcl/control01.ctl'
version 5475389
SQL>
2、发现/app/oracle/fast_recovery_area/orcl/control02.ctl的版本比较新。
使用这个作为控制文件从原先的spfile创建pfile
SQL> create pfile='/home/oracle/pfile_1025.txt' from spfile;
File created.
SQL>
3、修改/home/oracle/pfile_1025.txt文件,把control01.ctl去掉
再次启动正常
SQL> startup mount pfile='/home/oracle/pfile_1025.txt';
SQL>alter database open;出现如下报错。需要做一次recover datafile 3;
*
ERROR at line 1:
ORA-01172: recovery of thread 1 stuck at block 2702008 of file 3
ORA-01151: use media recovery to recover block, restore backup if needed