OMFs(Oracle Managed Files) datafile, control file, online redo log file에 사용할 수 있다. 9i부터 추가된 기능인데 테이블스페이스를 drop했을때 이에 속한 데이터파일도 자동으로 제거된다는 것이 기존과 크게 달라진 점이다. 어떻게 보면 불편할 수도 있고..
사용하기 위해선 다음의 패러미터를 설정해야 한다.
db_create_file_dest db_create_online_log_dest_n (n: 1~5)
db_create_online_log_dest_n 패러미터는 컨트롤파일,리두로그파일가 위치할 디렉토리를 지정한다. db_create_file_dest는 데이터파일이 위치할 디렉토리를 지정한다. 만일 db_create_online_log_dest_n이 설정되어 있지 않다면 컨트롤파일, 리두로그파일 또한 이 패러미터가 적용된다.
D:>sqlplus system/manager
SQL*Plus: Release 9.2.0.1.0 - Production on 일 Dec 15 06:19:20 2002
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
다음에 접속됨: Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production With the Partitioning, OLAP and Oracle Data Mining options JServer Release 9.2.0.1.0 - Production
db_create_file_dest패러미터에 테이블스페이스가 생성될 디렉토리를 설정. scope을 both로 두어서 spfile(영구히 저장)과 memory(현재 세션에 바로 적용)에 적용 SQL> alter system set db_create_file_dest='C:oracleoradatawin912db' scope=both;
시스템이 변경되었습니다.
테이블스페이스 생성시 데이터파일을 지정하지 않아도 오라클이 naming structure에 따라 알아서 데이터파일명을 정한다. SQL> create tablespace ts_kang;
테이블 영역이 생성되었습니다.
다음과 같은 데이터파일명을 갖는 페이블스페이스가 생성되었다. SQL> select name from v$datafile 2 where name like '%KANG%';
NAME ---------------------------------------------------------- C:ORACLEORADATAWIN912DBO1_MF_TS_KANG_YZQ7WY00_.DBF
SQL> host dir C:ORACLEORADATAWIN912DBO1* C 드라이브의 볼륨: WIN2000 볼륨 일련 번호: F845-C077
C:ORACLEORADATAWIN912DB 디렉터리
2002-12-15 06:16a 104,865,792 O1_MF_TS_KANG_YZQ7WY00_.DBF 1개 파일 104,865,792 바이트 0 디렉터리 9,964,974,080 바이트 남음
이렇게 데이터파일을 추가할 수 있다. SQL> alter tablespace ts_kang 2 add datafile;
테이블 영역이 변경되었습니다.
SQL> host dir C:ORACLEORADATAWIN912DBO1* C 드라이브의 볼륨: WIN2000 볼륨 일련 번호: F845-C077
C:ORACLEORADATAWIN912DB 디렉터리
2002-12-15 06:16a 104,865,792 O1_MF_TS_KANG_YZQ7WY00_.DBF 2002-12-15 06:21a 104,865,792 O1_MF_TS_KANG_YZQ86K00_.DBF 2개 파일 209,731,584 바이트 0 디렉터리 9,860,104,192 바이트 남음
각각 크기가 다른 데이터 파일을 추가 SQL> alter tablespace ts_kang 2 add datafile size 10m, size 20m;
테이블 영역이 변경되었습니다.
SQL> host dir C:ORACLEORADATAWIN912DBO1* C 드라이브의 볼륨: WIN2000 볼륨 일련 번호: F845-C077
C:ORACLEORADATAWIN912DB 디렉터리
2002-12-15 06:16a 104,865,792 O1_MF_TS_KANG_YZQ7WY00_.DBF 2002-12-15 06:21a 104,865,792 O1_MF_TS_KANG_YZQ86K00_.DBF 2002-12-15 06:26a 10,493,952 O1_MF_TS_KANG_YZQ8JD00_.DBF 2002-12-15 06:26a 20,979,712 4개 파일 241,205,248 바이트 0 디렉터리 9,828,618,240 바이트 남음
테이블스페이스를 drop하면, OS상에 존재하던 데이터파일도 함께 제거된다. SQL> drop tablespace ts_kang;
테이블 영역이 삭제되었습니다.
SQL> host dir C:ORACLEORADATAWIN912DBO1* C 드라이브의 볼륨: WIN2000 볼륨 일련 번호: F845-C077
C:ORACLEORADATAWIN912DB 디렉터리
파일을 찾을 수 없습니다.
SQL>
| This article comes from dbakorea.pe.kr (Leave this line as is)
> |