by 개발고수가되기를 [2018.08.01 14:13:51]
140만건 정도 삭제해야 하는데
툴에서 로딩바만 가고 실제로 삭제가 안되네요 방법 없을까요?
truncate는 table내 다 삭제라서 ㅠㅠ 딱 저 7월달 데이터만 삭제하면 되거든요
느낌이 락걸린거 같기도 하고 혹시 락걸린거 보거나 풀거나 하는 방법도 있을까요?
delete FROM T_aaa_110 WHERE DY_DATE = '201807'
컬럼 DY_DATE 값이 '201807' 이런식으로 월이 들어가나요?
DY_DATE 에 INDEX는 존재하나요?
UNIQUE 로 5번째로 잡혀 있습니다!
dbms는 어떤것을 쓰시나요?
간혹 인덱스 깨지는 경우도 있던데.. 확인 해보심이.
총 테이블이 엄청나게 큰게 아니고 계속 사용 해야되는게 아니라면
create t_tmp as select * from t WHERE DY_DATE not in ('201807')
1. truncate t
insert로 t_tmp 값(table nologging 모드)
2. drop t -> table rename
오라클 기준입니다.
데드락 상태면 로그에 다나와요.
킬 하면 되구요.