ORA-00376: 此时无法读取文件 4ORA-01110: 数据文件 4: 'D:/APP/WJ/ORADATA/ORCL11G/USERS01.DBF'
昨天删除了一些数据文件,现在找不到数据文件.1.检查数据文件状态
SQL> select file#,name,status from v$datafile;
FILE# NAME STATUS
---------- -------------------------------------------------------------------------------- -------
1 D:/APP/WJ/ORADATA/ORCL11G/SYSTEM01.DBF SYSTEM
2 D:/APP/WJ/ORADATA/ORCL11G/SYSAUX01.DBF ONLINE
3 D:/APP/WJ/ORADATA/ORCL11G/UNDOTBS01.DBF ONLINE
4 D:/APP/WJ/ORADATA/ORCL11G/USERS01.DBF OFFLINE
5 D:/APP/WJ/ORADATA/ORCL11G/EXAMPLE01.DBF ONLINE
12 D:/APP/WJ/ORADATA/ORCL11G/USERS02.DBF RECOVER
发现数据文件4脱机,数据文件12是recover状态
2.将数据文件4联机
SQL> alter database datafile 4 online;
Database altered
3.用RMAN恢复数据文件12
RMAN> recover datafile 12;正在开始介质的恢复
线程 1 序列 4 的归档日志已作为文件 D:/WJARC00004_0853710748.001 存在于磁盘上
线程 1 序列 5 的归档日志已作为文件 D:/WJARC00005_0853710748.001 存在于磁盘上
线程 1 序列 6 的归档日志已作为文件 D:/WJARC00006_0853710748.001 存在于磁盘上
......................
介质恢复完成, 用时: 00:00:04
完成 recover 于 21-8月 -14
4.再次检查数据文件状态
SQL> select file#,name,status from v$datafile;
FILE# NAME STATUS
---------- -------------------------------------------------------------------------------- -------
1 D:/APP/WJ/ORADATA/ORCL11G/SYSTEM01.DBF SYSTEM
2 D:/APP/WJ/ORADATA/ORCL11G/SYSAUX01.DBF ONLINE
3 D:/APP/WJ/ORADATA/ORCL11G/UNDOTBS01.DBF ONLINE
4 D:/APP/WJ/ORADATA/ORCL11G/USERS01.DBF ONLINE
5 D:/APP/WJ/ORADATA/ORCL11G/EXAMPLE01.DBF ONLINE
12 D:/APP/WJ/ORADATA/ORCL11G/USERS02.DBF OFFLINE
发现数据文件12脱机把数据文件12联机,再检查数据文件12状态
SQL> alter database datafile 12 online;
Database altered
SQL> select file#,name,status from v$datafile where file#=12;
FILE# NAME STATUS
---------- -------------------------------------------------------------------------------- -------
12 D:/APP/WJ/ORADATA/ORCL11G/USERS02.DBF ONLINE
至此问题解决.
总结一下:这个故障的处理非常简单,主要是熟悉一下该问题的流程:1.既然数据文件不能访问,首先要检查数据文件状态以及数据文件是否在磁盘上.2.如果数据文件只是off
line,则只需要把数据文件脱机即可;如果数据文件丢失或RECOVER状态,就要执行恢复,然后再online.注意:要及时备份
数据库