프린트 하기

OS환경 : Oracle Linux6.8(64bit)


DB 환경 : Oracle Database 11.2.0.4


방법 : 

신규 테이블 추가 NEW_EMP

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
CREATE TABLE  NEW_EMP (ENO NUMBER(10), ENAME VARCHAR2(10)
)
TABLESPACE USERS
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE
(
   INITIAL 65536
   NEXT 1048576
   MINEXTENTS 1
   MAXEXTENTS UNLIMITED
   BUFFER_POOL DEFAULT
   PCTINCREASE 50
)
LOGGING
DISABLE ROW MOVEMENT ;



각 옵션 설명 

TABLESPACE USERS

테이블이 생성 될 TABLESPCAE를 지정해주는 옵션


PCTFREE 10

블럭내에 이미 존재하고 있는 Row에 Update가 가능하도록 예약시켜 놓는 블럭의 퍼센트 값을 지정함

예로 "PCTFREE 20" 으로 설정을 하면, 데이터 블록의 20%를 사용 가능한 빈 영역으로 유지하여 각 블록에 있는 행을 갱신하는데 사용한다는 의미

http://www.gurubee.net/lecture/1103


INITRANS 1

세그먼트의 속성 중 동시 트랜잭션 수를 제어하는 옵션

INITRANS의 기본값은 2이며 최소값도 2임

단, 딕셔너리(all_tables 등)에는 "1"의 값으로 관찰됨 그래도 실제 값은 2임(ukja블로그 테스트 내용확인)

http://ukja.tistory.com/252

http://www.dator.co.kr/know_site/60829


MAXTRANS 255

세그먼트의 속성 중 동시 트랜잭션 수를 제어하는 옵션

10g 이후 무시되는 파라미터 

MAXTRANS의 기본값은 255이며 최소값도 255임, 즉 고정값임

아래 링크 제일아래부분 확인

http://wiki.gurubee.net/pages/viewpage.action?pageId=28117277&


STORAGE

데이터베이스 객체를 저장하는 방법을 지정할 수 있음

https://docs.oracle.com/cd/E11882_01/server.112/e41084/clauses009.htm#SQLRF30013


INITIAL 65536

Segment가 생성될 때 할당될 때 첫 번째 확장영역의 크기

http://www.gurubee.net/lecture/1480


NEXT 1048576

다음 Extents의 크기, 두 번째 확장영역은 NEXT의 원래 크기와 동일하며 다음부터의 NEXT는 (1+PCTINCREASE/100)과 Next의 이전크기를 곱한 크기로 설정됨


MINEXTENTS 1

생성할 Extents의 최소 값


MAXEXTENTS UNLIMITED

생성할 Extents의 최대 값


PCTINCREASE 

Extents의 증가율, Default값은 50


BUFFER_POOL DEFAULT

기본 버퍼 풀에서 사용하도록 지정 하는것

https://docs.oracle.com/cd/E11882_01/server.112/e41084/clauses009.htm#SQLRF30013


LOGGING

로깅옵션 키는것(default 값임 NOLOGGING이 로깅 안하겠다는 옵션(이 경우 복구가 잘되지않음))

http://wiki.gurubee.net/pages/viewpage.action?pageId=28117277&


DISABLE ROW MOVEMENT

행이동 비활성화 하는것

행 이동 활성화는 flashback table, shrink 할떄 enable로 바꾸고 작업을함

http://support.dbworks.co.kr/index.php?document_srl=4183&mid=ora_tb

http://www.gurubee.net/article/61821



참조 : 

http://www.gurubee.net/lecture/1103