欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

Oracle数据文件因存储故障进入恢复模式

最编程 2024-02-21 14:37:18
...

环境:系统Linux 2.6.28.10  数据库版本:Oracle10g rac

故障描述:数据库连接不上,查看数据库日志ORA-00376: file 10 cannot be read at this time

ORA-01110: data file 10: '+DATA01/********'

故障分析:查看硬件共享存储,由于更换硬盘,raid降级,正在做数据同步。同步过程中有报错 unreadable sector(s) detected ,扇区有报错。应该就是由此导致的。

在系统里查看asm存储,

#export ORACLE_SID=+ASM1
#asmcmd
>lsdg

共享磁盘状态是正常的,接着查看数据文件状态

set pagesize 999;
set linesize 300;
col name for a100;
select file#,name,status from v$datafile;

10 +DATA01/*********       RECOVER

数据文件10 status处于recover状态,其他的数据文件都是online状态

故障解决:先尝试将datafile 10 offline

alter database datafile 10 offline;

执行成功后查看datafile的状态,依然是recover状态,看日志刚才的offline命令确实也执行成功了。先不管,

继续尝试直接recover,如果不行考虑从备份中restore再recover。

rman target /
recover datafile 10;

执行过程中观察有没有报错。这次是直接执行成功了,没有报错。接着使datafile online

alter database datafile 10 online;

执行成功后查看alert日志。已经恢复正常,不再报之前的错误。