存储无法访问导致数据库异常宕机,重起数据库无法启动
数据库可以mount,但是无法启动,发现文件3(sysaux01.dbf)损坏,需要介质恢复,因为设置为noarhivelog模式,没有数据库的备份,无法正常恢复。
如果自己搞不定可以找诗檀软件专业ORACLE数据库修复团队成员帮您恢复!
诗檀软件专业数据库修复团队
服务热线 : 13764045638 QQ号:47079569 邮箱:[email protected]
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导入数据。
Leave a Reply