database/oracle

ORA-01157

labj 2012. 3. 22. 00:51

실수로 drop tablespace 로 tablespace 을 지우지 않고 쉘에서 파일을 지워버린 뒤 오라클을 재시동했더니 아래와 같은 에러가 발생하였다.

 

ORA-01157: cannot identify/lock data file 13 - see DBWR trace file
ORA-01110: data file 13: '/oracle/oradata/science_data.TBL'

 

아래의 명령으로 확인해보니 해당 파일들에 대한 정보가 남아있다.

 

  1. select file#, status, name from v$datafile;

 

그래서 아래와 같이 해당 파일들에 대한 정보를 삭제하였다.

 

  1. alter database datafile '/oracle/oradata/science_data.TBL' offline drop;

 

물론 위의 파일 정보를 통해서 실제 파일의 위치를 지정해주면 된다.

 

실수로 삭제한 모든 파일을 위의 명령으로 offline 시키고 drop 한 뒤에 다시 database 를 open 해주면 마무리된다.

 

  1. alter database open;

 

마지막으로 해당 datafile 의 정보를 지워준다.

 

  1. DROP TABLESPACE [tablespace_name] INCLUDING CONTENTS;

'database > oracle' 카테고리의 다른 글

Table생성 스크립트 파일 뽑기  (0) 2012.03.22
오라클 문자집합 조회  (0) 2012.03.22
DB 생성  (0) 2012.03.22
ORACLE DB LINK 걸기  (0) 2012.03.22
특수문자 insert  (0) 2012.03.22