Making a Tablespace Read Only

프로그래밍/DB 2007. 11. 27. 14:28 Posted by galad
Making a Tablespace Read Only
필요 조건
읽기 전용 테이블스페이스를 쓸 수 있도록 만들기
WORM장치에서 일기 전용 테이블스페이스 생성

Tablespace내의 데이타파일에 쓰기 방지
· 방법 : ALTER TABLESPACE 명령 사용
· 권한 : ALTER TABLESPACE 권한
· 예] sp_test라는 Tablespace를 Read Only으로

     SQL>ALTER TABLESPACE sp_test READ ONLY;
· Read Only는 Tablespace Online, Offline 상태가 아님

필요조건
Tablespace이 Online 상태
· Offline 상태에서 Tablespace을 읽기 전용으로 변경시
· 에러 발생 ORA-01539: tablespace 'SP_TEST' is not online
전체 데이타베이스내에 실행중인 트랜잭션이 없어야 함
Tablespace에 사용중인 Rollback Segment가 없어야 함
Tablespace은 현재 Online Backup을 수행하지 않음
· (백업시 Tablespace내의 데이타파일의 Header File 변경)
7.1.0 이상

Read Only Tablespace에 속하는 데이타파일의 이름, 크기 변경 불가

Read Only 해제
Tablespace에 READ/WRITE 가 가능 하도록
방법 : ALTER TABLESPACE 명령 사용
권한 : ALTER TABLESPACE 권한
예] sp_test라는 Tablespace을 Read Only에서 해제
 SQL>ALTER ATBLESPACE sp_test READ WRITE;
필요조건
· Tablespace 내의 모든 데이타파일이 온라인 상태
· (V$datafile View에서 Datafile 상태 확인 후 ALTER DATABASE DATAFILE ONLINE으로)

WORM 장치에서 Read Only 테이블 생성
갱신이 필요없는 Read Only 파일이 있어면 WORM(Write Once Read Many)장치에서 Read Only Tablespace 생성
WORM장치에서 Read Only Tablespace을 생성하는 절차
    1. 다른장치에서 쓸수 있는 Tablespace 생성한 후 Tablespace에 속한 개체를 생성하여 데이타에 넣음
    2. ALTER TABLESPACE 명령의 READ ONLY 옵션으로 Read Only으로 Tablespace 변경
    3. Tablespace의 데이타파일을 WORM 장치에 복사한 후 Copy명령어로 파일을 복사
    4. Tablespace을 Offline으로
    5. WORM 장치에 복사한 데이타파일이름과 일치하도록 데이타파일 이름 변경
    ==> Control File 이름 변경
    6. Tablespace을 Online

'프로그래밍 > DB' 카테고리의 다른 글

Tablespace 정보보기  (0) 2007.11.27
Tablespace 삭제  (0) 2007.11.27
Altering Tablespace Availability  (0) 2007.11.27
Tablespace 관리에 대한 지침사항  (0) 2007.11.27
Tablespace 할당 관리  (0) 2007.11.27