반응형
# HWM : High Water Mark
고수위 즉, 마지막까지 등록된 블록위치
- 만약 데이터가 대량으로 지워지면 이전에 표시되었던 HWM 은 그대로임
- 실제로 사용되는 데이터는 HWM 보다 훨씬 작아도 그대로임
- 데이터를 조회 시 HWM 표시부분까지 읽기때문에 불필요한 DISK I/O 발생함
- HWM 은 관리자가 관리하지 않으면 늘어나기만 함, 축소되지 않음
- HWM 을 재구성(reorg) 해주서야 함
- Truncate 로 데이터 삭제 시 HWM 도 초기화 됨
# HWM 줄여주는 방법 1
-- SHRINK 실행
ALTER TABLE TABLE_NAME SHRINK SPACE;
-- ROW-MOVEMENT 활성화
ALTER TABLE TABLE_NAME ENABLE ROW MOVEMENT;
-- TABLE 과 관련된 모든 데이터 SHRINK 실행
ALTER TABLE TABLE_NAME SHRINK SPACE CASCADE;
# HWM 줄여주는 방법 2
- 임시 테이블 스페이스 생성 후 테이블 스페이스 MOVE 후 다시 원본 테이블 스페이스로 MOVE
- 이후 인덱스 REBUILD
-- 임시 테이블스페이스 생성
CREATE TABLESPACE MOVE_IMSI DATAFILE '/oracle/app/oracle/oradata/movets01.dbf' SIZE 1G;
-- 임시 테이블스페이소로 MOVE
ALTER TABLE TABLE_NAME MOVE TABLESPACE MOVE_IMSI;
-- 원본 테이블스페이스로 MOVE
ALTER TABLE TABLE_NAME MOVE TABLESPACE REAL_TS;
-- 인덱스 rebuild
ALTER INDEX IDX_HWM_COLB REBUILD;
참조 : positivemh.tistory.com/350
'Study > DB' 카테고리의 다른 글
[Oracle] ora-12516 (0) | 2021.02.16 |
---|---|
[Oracle] 통계정보 확인 (0) | 2021.01.15 |
[Oracle] 통계정보 생성 (0) | 2021.01.11 |
[Oracle] Job 등록 / 스케쥴링 (0) | 2020.12.23 |
MariaDB (MySQL) 자주 쓰는 날짜 함수 및 포맷 (0) | 2020.12.08 |