출처 : http://blog.naver.com/luckij?Redirect=Log&logNo=50041167088

 

DataFile을 읽을수 없다는 에러(ora-00376, ora-01110) 처리사례



일반 Query를 수행 중 아래와 같은 Error 발생


ERROR:

ORA-00376: file 13 cannot be read at this time
ORA-01110: data file 13: '/home/oracle/oradata/orcl/tbs03.DBF'

[처리방법]
#>sqlplus "/as sysdba"

 

-- 1. 데이터파일 또는 테이블 스페이스 상태를 체크한다.

sql>select status, name from v$datafile;

 

...

recover     /home/oracle/oradata/orcl/tbs03.DBF
recover     /home/oracle/oradata/orcl/tbs04.DBF

...

 

-- 2. status가 recover인 항목을 복구한다.

sql>recover datafile '/home/oracle/oradata/orcl/tbs03.DBF';

Media recovery complete.
sql> recover datafile '/home/oracle/oradata/orcl/tbs04.DBF'
Media recovery complete.

 

--  3. 테이블 스페이스를 체크한다. tablespace status check

sql>select tablespace_name, status from dba_tablespaces;

 

TABLESPACE_NAME  STATUS
TBS01                       ONLINE

 

-- 4. 데이터 파일을 체크한다. datafile status check

sql>select file#, name, status from v$datafile;

FILE#   NAME                                                STATUS

------ ------------------------------------- --------
13        /home/oracle/oradata/orcl/tbs03.DBF   OFFLINE
14        /home/oracle/oradata/orcl/tbs04.DBF   OFFLINE

 

-- 5. offline으로 되어 있는 부분을 online으로 변경해 준다.

SQL> alter database datafile 13 online;

Database altered.

SQL> alter database datafile 14 online;

Database altered.

 

-- 6. 데이터파일을 재조회 해본다.  datafile status recheck

SQL>select file#, name, status from v$datafile;
FILE# NAME STATUS
13 /home/oracle/oradata/orcl/tbs03.DBF ONLINE
14 /home/oracle/oradata/orcl/tbs04.DBF ONLINE

 

-- 7. 기타 쿼리를 수행해 본다. Etc query run for check.

 

 

Posted by 나른한스누피