Notice
Recent Posts
Recent Comments
Link
«   2025/01   »
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 31
Archives
Today
Total
관리 메뉴

DBDBDEEP

Oracle 공간관리 2 본문

Oracle ADMIN

Oracle 공간관리 2

Kihwane 2022. 7. 21. 15:21

2. 테이블 스페이스 사전 모니터

 

- Database Alert을 사용하여 사용가능한 디스크 공간이 적은 상태에서 테이블 스페이스가 실행될 때와 특정 세그먼트의      공간이 부족해질 때를 알 수 있음.

- 85%, 97% (임계값-Threshold) --> 이 값 마다 Alert 된다.

 

확인방법

1. EM : 자동으로 알려줌

2. EM이 없는 상황이라면 이 정보메시지를 볼 수 있는 View가 있는데 그것을 활용하면 된다.

   - DBA_OUTSTANDING_ALERTS

   - dba_alert_history : 그동안 발생한 alert메시지를 보여주는곳

 

 임계값 및 문제 해결

- 테이블 스페이스 임계값은 테이블 스페이스에서 채워진 공간 또는 사용공간으로 정의됨.

- critical (97%) Warning (85%)임계값으로 된다.

1. 테이블 스페이스 레벨에서의 해결법

- add datafile

- resize

- autoextend on

- 테이블 스페이스에서 희소 객체 축소 (Shrick)

 

  shrink 명령

- table,Iot,세그먼트,인덱스,파티션,서브파티션 등이 가지는 공간에서 사용

- 사용되었다가 비어진 공간 / 행 이전 & 행 체이닝 으로 난잡해진 row 위치 재구성

- HWM 재조정

- 낭비되었던 공간을 재조정

 

alter table employees shrink space [compact / cascade]

 

1) compact

- shrink 작업을 진행하되 HWM을 재조정 하지 않음

- 공간을 즉시 반환하지 않음.

- 다시 alter table employees shrink space; 명령을 사용하여 작업완료

- 두 번 사용하는 이유는 첫 번째에서 데이터를 맨 앞으로 배치 / 두 번째에서 HWM  재조정, 사용되지 않은 공간 회수

- alter table .. compact를 하면 축소작업 진행상황이 BMB에 저장되어 이미수행된 작업을 기억함 ---> 한가한 시간에 두        번째 shrink space; 실행하면 된다.

 

 * compact를 사용하는 경우

   - 축소작업 하는 동시에 장기 실행 Query가 있는 경우

 

2) cascade

- shrink 작업의 대상인 테이블과 관련된 모든 오브젝트들을 shrink 작업을 수행하도록한다.

 

축소 작업의 결과

- row Migration이 해결되어 있을 것이다.

- 해당 세그먼트에 대한 스캔 및 DML 성능 및 공간 활용이 향상된다

- 인덱스가 유지관리 된다

- 트리거가 실행되지 않는다

┗━> insert/delete 작업을 통해 진행되지만 실제 데이터 자체가 변경되지는 않는다.

- IOT에서 보조 인덱스 재구축이 권장된다


3. Resumable space allocation

배경 스토리 > 공간할당 부족 오류가 발생하면 취소된다.

 

 

resumable space allocation 이란,

- 취소가 되지 않는 방법

- 공간할당 문제가 발생할 경우 대규모 데이터베이스 작업 실행을 일시 중지했다가 나중에 재개할 수 있는 방법.

- 서버가 유저에게 오류를 표시하지 않고 관리자가 수정조치 가능하고 오류가 해결되면 재

- Resumable Space Allocation  이 기능임

 

resumable

- 일시 중지시 자동으로 트랜잭션도 일시 중지된다.

--> SQL 문을 일시 중지했다가 재개할 때 까지 모든 트랜잭션 리소스 보류

- Resumable 문은 여러 번 일시 중지 및 재개될 수 있음.

 

Resumable 문의 일시 정지 원인 : 공간부족 / 최대 Extent 도달 / 공간 할당량 초과

 

설정하는 방법

1) alter session enable resumable; // resume

2) alter session enlable resumable_timeout 초기화 파라미터를 0이 아닌 값으로 수정

3) insert 작업 수행

4) alter session disable resumable // resume 해제

 

resumable 작업 쓰는 경우

query : 정렬 영역에 사용할 임시공간이 부족한 select(공간필요)

DML : INSERT / UPDATE / DELET 는 공간할당 필요

DDL : create table../ create index..

'Oracle ADMIN' 카테고리의 다른 글

Oracle 데이터 동시성 관리, Lock  (0) 2022.07.24
언두 데이터 관리  (0) 2022.07.21
Oracle 공간 관리  (0) 2022.07.03
Oracle 데이터베이스 저장 영역 구조  (0) 2022.07.03
Oracle 프로파일 생성 및 관리  (0) 2022.07.03