set pagesize 500
set linesize 300
col file_name format a50
[테이블스페이스 현황 확인]
SELECT d.tablespace_name , d.bytes "Total(M)" , f.bytes "Free(M)" , e.bytes "Max Extent(M)" , Round(f.bytes/d.bytes*100,0) "Free %"
FROM ( SELECT tablespace_name , sum(bytes)/1024/1024 as bytes
FROM dba_data_files
GROUP BY tablespace_name ) d ,
( SELECT tablespace_name , sum(bytes)/1024/1024 as bytes
FROM dba_free_space
GROUP BY tablespace_name ) f ,
( SELECT tablespace_name , max(bytes)/1024/1024 as bytes
FROM dba_free_space
GROUP BY tablespace_name ) e
WHERE d.tablespace_name = f.tablespace_name (+)
AND f.tablespace_name = e.tablespace_name
;
[특정 테이블스페이스의 데이터파일 확인]
select tablespace_name, file_name, bytes/1024/1024 from dba_data_files
where tablespace_name='테이블스페이스명'
;
select * from dba_temp_files;
select tablespace_name, file_name, bytes/1024/1024 from dba_temp_files
;
[테이블스페이스 생성]
create tablespace 새롭게 생성할 이블스페이스명 datafile '/..데이터파일 위치../데이터파일명.dbf' size 1024m online;
[데이터파일 추가]
alter tablespace 테이블스페이스명 add datafile '/..데이터파일 위치../데이터파일명.dbf' size 1024m;
[데이터파일 resizing]
alter database datafile '/../변경할파일명.dbf' resize 2048m;
alter database tempfile '/../변경할파일명.dbf' resize 1024m;
[데이터파일의 자동확장]
alter database datafile '/..데이터파일 위치../데이터파일명.dbf' autoextend on; (비권장)
▣ AUTOEXTEND 확인
select tablespace_name, file_name, AUTOEXTENSIBLE from dba_data_files;
▣ AUTOEXTEND 의 OFF
SQL> ALTER DATABASE DATAFILE ‘C:\ORACLE\ORADATA\app_data02.dbf'
AUTOEXTEND OFF;
▣ AUTOEXTEND 사용 예제
SQL> ALTER TABLESPACE storm
ADD DATAFILE 'C:\ORACLE\ORADATA\app_data02.dbf' SIZE 200M
AUTOEXTEND ON NEXT 10M
MAXSIZE 500M;