티스토리 뷰
반응형
ORA-00054 발생했을때 처리하는 방법..
발생 가능성은 다양하게 존재한다. Commit가 수행되지 않았을 경우라던가 Toad에서 Schema Browser를 사용하다가 삽질을 했다던가 등의 문제로 다양한 경우에서 발생할 수 있는 문제이다.
Truncate같은 명령은 ORA-00054라는 에러라도 출력하지만, DML(Delete) 문장 실행시엔 그냥 멈춰버리는 경우도 있다고 한다.
해결 방법은 오라클 서비스를 재시작 하면 쉽게 처리가되지만, DB를 사용하는 곳에서 DB 재시작이 그리 녹녹하진 않을 것이다. 이러한 에러가 발생하는 이유는 테이블에 Lock이 걸려서 생기는데 이 원인을 해결해주면 된다.
[Qeury]
SELECT A.sid , A.serial#
FROM v$session A , v$lock B , dba_objects C
WHERE A.sid = B.sid and B.id1 = C.object_id
AND B.type = 'TM' and C.object_name='TABLE_NAME';
[Result]
SID SERIAL#
------- ----------
2391 18325
Lock를 하고 있는 대상의 데이터가 나오면
ALTER system kill session '2391, 18325';
와 같은 쿼리를 날려서 원인이 되는 세션을 날려버리면 된다.
반응형
'Database' 카테고리의 다른 글
[ORACLE]전화번호 자르기! (-) 기준 (0) | 2012.06.20 |
---|---|
[Toad] Rebuild Table을 이용한 테이블 컬럼 위치 변경 (0) | 2012.04.25 |
[ORACLE]테이블명,인덱스명 변경 (0) | 2012.03.30 |
[MSSQL]LPAD,RPAD,프로시저 (0) | 2012.03.20 |
쿼리 깔끔하게 정리하기 (0) | 2012.03.14 |
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- delete
- 테이블
- Toad
- eclipse
- 설정
- Linux
- apache
- server
- select
- java
- MySQL
- 윈도우
- sql
- 파일
- Oracle
- table
- 오라클
- DB
- DATABASE
- tomcat
- Shell
- Windows
- 데이터
- 서버
- 백업
- IP
- mssql
- 자동차
- user
- 리눅스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함