ITPub博客

首页 > 数据库 > Oracle > ORA-01157: cannot identify/lock data file 19 - see DBWR trace file问题处理

ORA-01157: cannot identify/lock data file 19 - see DBWR trace file问题处理

原创 Oracle 作者:gydba 时间:2015-11-05 10:08:57 0 删除 编辑
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/,如需转载,请注明出处,否则将追究法律责任。

下一篇: ASM Disk Header
请登录后发表评论 登录
全部评论

注册时间:2015-08-24

  • 博文量
    77
  • 访问量
    153877