ORA-01157: cannot identify/lock data file 19 - see DBWR trace file问题处理
告警信息:
ORA-01157: cannot identify/lock data file 19 - see DBWR trace file
ORA-01110: data file 19: '/app/Oracle/oradata/users02.dbf'
ORA-27037: unable to obtain file status
SVR4 Error: 2: No such file or directory
Additional information: 3
此类的情况为:
1.数据文件是存在的,但Oracle数据库并没发现它,可能是移动到了其他的目录,导致oracle没有定义。这种情况下,把数据文件恢复到原来的位置就行。
2.数据文件不存在,数据文件可能已被物理删除或损坏,Oracle无法识别。可能会报这种错误:ORA-27046: file size is not a multiple of logical block size
第一种情况:数据文件还存在
这个分几种情况,其中比较严重的就是system表空间,如果这个表空间over了,那么就得重建数据库了。
解决方法如下:
1.如果数据库是idle状态,起到mount中来
startup mount
2.offline drop这个数据文件
ALTER DATABASE DATAFILE '数据文件的路径' OFFLINE DROP;
3.把数据库起到open状态
ALTER DATABASE OPEN;
4.删除这个表空间(个人情况,如果不想要这个表空间内容)
DROP TABLESPACE tablespace_name INCLUDING CONTENTS;
第二种情况:通过恢复数据文件
1.从归档中恢复丢失的数据文件
2.把数据库起到mount状态
STARTUP MOUNT;
3.查询下redolog文件
SELECT V1.GROUP#, MEMBER, SEQUENCE#,
FIRST_CHANGE#
FROM V$LOG V1, V$LOGFILE V2
WHERE V1.GROUP# = V2.GROUP# ;
4.如果数据库处于非归档模式则:
SELECT FILE#, CHANGE# FROM V$RECOVER_FILE;
如果CHANGE#低于FIRST_CHANGE#,那么这个数据文件已经被恢复了5.恢复数据文件
RECOVER DATAFILE '数据文件的路径' ;
6.把数据库起到open状态
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/30430420/viewspace-1822967/,如需转载,请注明出处,否则将追究法律责任。