2 datafile '/home/oracle/ts1.dbf' size 10M;
테이블스페이스가 생성되었습니다.
10M 할당된 테이블스페이스가 생성되었다
SQL> create table t1
2 (id number)
3 tablespace ts1;
테이블이 생성되었습니다.
※ 참고로 테이블스페이스는 관리자가 생성하고 t1테이블은 유저가 만든것이다
(다시 말해 유저가 테이블을 만들수있게 관리자가 테이블스페이스를 할당했다고 생각하면 된다)
SQL> select TABLE_NAME, TABLESPACE_NAME from user_tables;
TABLE_NAME TABLESPACE_NAME
--------------- ---------------
T1 TS1
DEPT USERS
EMP USERS
BONUS USERS
SALGRADE USERS
T1 테이블에 데이터를 꽉 채워 본다
SQL> insert into t1 select * from t1;
28 개의 행이 만들어졌습니다.
...
SQL> insert into t1 select * from t1;
114688 개의 행이 만들어졌습니다.
SQL> insert into t1 select * from t1;
229376 개의 행이 만들어졌습니다.
SQL> insert into t1 select * from t1;
insert into t1 select * from t1
*
1행에 오류:
ORA-01653: unable to extend table SCOTT.T1 by 128 in tablespace TS1
이제 테이블스페이스를 확장시켜본다
SQL> alter tablespace ts1 add
2 datafile '/home/oracle/ts1_2.dbf' size 20M;
테이블스페이스가 변경되었습니다.
20M를 추가하여 기존의 10M와 함께 전체 30M가 되었다
SQL> insert into t1 select * from t1;
458752 개의 행이 만들어졌습니다.
데이터가 더 들어가진다!!
다시 계속 집어넣는다
SQL> ALTER DATABASE DATAFILE '/home/oracle/ts1.dbf' RESIZE 30M;
데이타베이스가 변경되었습니다.
SQL> ALTER DATABASE DATAFILE '/home/oracle/ts1.dbf'
2 AUTOEXTEND ON NEXT 10M MAXSIZE 100M;
데이타베이스가 변경되었습니다.
SQL> insert into t1 select * from t1;
1835008 개의 행이 만들어졌습니다.
계속 들어간다...
테이블 t1의 크기는
SQL> show parameter db_block_size
NAME TYPE VALUE
---------------------- ----------------- ---------------
db_block_size integer 8192
SQL> desc dba_extents
이름 널? 유형
-------------------------------- -------- ------------
OWNER VARCHAR2(30)
SEGMENT_NAME VARCHAR2(81)
PARTITION_NAME VARCHAR2(30)
SEGMENT_TYPE VARCHAR2(18)
TABLESPACE_NAME VARCHAR2(30)
EXTENT_ID NUMBER
FILE_ID NUMBER
BLOCK_ID NUMBER
BYTES NUMBER
BLOCKS NUMBER
RELATIVE_FNO NUMBER
SQL> select sum(blocks) from dba_extents
2 where segment_name = 'T1';
SUM(BLOCKS)
-----------
14336
SQL> select 14336 * 8192 from dual;
14336*8192
----------
117440512
대략..120메가 정도 된다...
[출처] 테이블스페이스 생성 및 확장|작성자 kjhfreedom
'Database > ORACLE' 카테고리의 다른 글
[오라클Tip] TRUNCATE vs DELETE (0) | 2011.06.29 |
---|---|
예약어와 중복되는 이름을 사용하려면 (0) | 2011.05.07 |
[Oracle]테이블스페이스 생성하기 (0) | 2011.05.07 |
[오라클]테이블에 주석 입력 (0) | 2011.04.29 |
오라클 덤프/임포트 , 유져생성 및 권한주기 (0) | 2011.04.06 |