◆ 테이블 리오그

국민은행 테이블스페이스에 고객 테이블이 있다. 중간에 고객들이 가입도 하고 탈퇴도 하고 결국 익스텐트 공간 중 많은 부분이 듬성듬성 비어버렸다.
그래서 쓰는 애들끼리, 안쓰는 애들끼리 모아놓으면 훨씬 더 속도도 개선되고 관리방법도 좋을 것이다.

그렇다면 어떻게 익스텐트를 가지런히 모아놓을 수 있을까?
첫번째 방법은, 고객테이블 백업받아놓고 테이블을 지운 후 다시 부어넣으면 된다.
두번째 방법은, 고객테이블을 다른 테이블스페이스로 옮긴 후 다시 원래 테이블스페이스로 옮기면 된다.

단, 위 작업을 해주고 나면 반드시 인덱스 리빌드 작업 또한 해주어야 한다.

생각을 해보자. 국민은행 테이블스페이스의 고객테이블을 리오그 작업을 위해 우리은행 테이블스페이스로 옮겼다고 하자. 우리은행 테이블스페이스는 B사용자의 테이블스페이스다. 그렇다면 그때의 고객테이블은 누구의 소유일까? 여전히 A사용자의 고객테이블이다. 테이블스페이스는 메모리를 관리하기 위한 가상의 공간일 뿐 소유권과는 아무런 상관이 없다.



◆ 테이블 작업 조회 관련 데이터 딕셔너리
  - DBA_TABLES
  - DBA_OBJECTS
  - DBA_INDEXES


◆ 리오그 명령어
SQL> alter table 테이블명
   move tablespace 테이블스페이스명;


◆ 인덱스 리빌드 명령어
SQL> alter index 인덱스명 rebuild;

'오라클 > Admin' 카테고리의 다른 글

[Admin] User and Schema  (0) 2010.09.04
[Admin] Profile  (0) 2010.09.04
[Admin] Extent와 Block과의 관계  (0) 2010.09.02
[Admin] Rowid  (0) 2010.09.02
[Admin] Undo Management  (0) 2010.09.02
Posted by 겨울섬
,