存储无法访问导致数据库异常宕机,重起数据库无法启动

数据库可以mount,但是无法启动,发现文件3(sysaux01.dbf)损坏,需要介质恢复,因为设置为noarhivelog模式,没有数据库的备份,无法正常恢复。  

如果自己搞不定可以找诗檀软件专业ORACLE数据库修复团队成员帮您恢复!

诗檀软件专业数据库修复团队

服务热线 : 13764045638   QQ号:47079569    邮箱:service@parnassusdata.com

  SQL> alter database open; alter database open * ERROR at line 1: ORA-01172: recovery of thread 1 stuck at block 131977 of file 3 ORA-01151: use media recovery to recover block, restore backup if needed   SQL> recover datafile 3 ; ORA-00283: recovery session canceled due to errors ORA-12801: error signaled in parallel query server P003 ORA-10562: Error occurred while applying redo to data block (file# 3, block# 37292) ORA-10564: tablespace SYSAUX ORA-01110: data file 3: '/opt/ora   [oracle@mlab2 ~]$ oerr ora 283 00283, 00000, "recovery session canceled due to errors" // *Cause: An error during recovery was determined to be fatal enough to end // the current recovery session. // *Action: More specific messages will accompany this message. Refer to // the other messages for the appropriate action.     尝试通过allow 1 corruption忽略坏块,但是部分块无法跳过。   SQL> recover database allow 1 corruption; ORA-00283: recovery session canceled due to errors ORA-10562: Error occurred while applying redo to data block (file# 3, block# 37292) ORA-10564: tablespace SYSAUX ORA-01110: data file 3: '/opt/oracle/oradata/monitor/sysaux01.dbf' ORA-10560: block type '0' ORA-00600: internal error code, arguments: [4553], [2], [0], [], [], [], [], []   通过DBV工具进行检查,只发现sysaux表空间有损坏,system及其它表空间正常。 和客户沟通,将sysaux01.dbf数据文件offline,先将数据库open,然后将数据进行逻辑备份,重建数据库,通过逻辑备份将数据恢复。   和客户沟通,将sysaux01.dbf数据文件offline,先将数据库open,然后将数据进行逻辑备份,重建数据库,将数据恢复。   SQL> alter database open; alter database open * ERROR at line 1: ORA-01172: recovery of thread 1 stuck at block 131977 of file 3 ORA-01151: use media recovery to recover block, restore backup if needed   SQL> alter database datafile 3 offline drop;   Database altered.   SQL> alter database open;   Database altered. 数据库已启动。   因为没有SYSAUX表空间,发现通过EXP导出数据时不能全库导出,也不能按用户导出,因此对SYSAUX表空间进行重建,重建后可以通过EXP正常导出数据。 新建Monitor1数据库,将备份数据导入,然后修改Service_names参数为monitor,对外提供服务,原数据库monitor关闭。   1:实例名称ORACLE_SID=monitor1 2:创建相应的目录 /data2/monitor,adump,bdump,cdump,udump 3:建立密码文件: $ORACLE_HOME/bin/orapwd  file=$ORACLE_HOME/dbs/orapwmonitor1 password=monitor1 4: 修改参数文件 5.设置当前工作实例: export ORACLE_SID=monitor1 6.登陆oracle: sqlplus '/ as sysdba' 7.启动实例: SQL>startup nomount 8.通过脚本创建数据库及相应的表空间、用户等。 9.IMP导入数据。