--기본 테이블스페이스 조회 / 해당 계정 DBA 권한 필요
SELECT * FROM DBA_TABLESPACES;
--테이블스페이스 경로 확인
SELECT TABLESPACE_NAME, FILE_NAME, BYTES FROM dba_data_files;
--사용자별 사용 테이블스페이스 확인
SELECT USERNAME, DEFAULT_TABLESPACE FROM dba_users;
--사용자 테이블스페이스 설정
ALTER USER [사용자 계정명] DEFAULT TABLESPACE [테이블스페이스명] QUOTA UNLIMITED ON [테이블스페이스명] ;
--전체 테이블스페이스 조회 및 경로 확인
SELECT
A.TABLESPACE_NAME "테이블스페이스명",
A.FILE_NAME "파일경로",
(A.BYTES - B.FREE) "사용공간",
B.FREE "여유 공간",
A.BYTES "총크기",
TO_CHAR( (B.FREE / A.BYTES * 100) , '999.99')||'%' "여유공간"
FROM (
SELECT
FILE_ID, TABLESPACE_NAME, FILE_NAME, SUBSTR(FILE_NAME,1,200) FILE_NM, SUM(BYTES) BYTES
FROM
DBA_DATA_FILES
GROUP BY
FILE_ID,TABLESPACE_NAME,FILE_NAME,SUBSTR(FILE_NAME,1,200)
) A, (
SELECT
TABLESPACE_NAME, FILE_ID, SUM(NVL(BYTES,0)) FREE
FROM
DBA_FREE_SPACE
GROUP BY
TABLESPACE_NAME,FILE_ID
) B
WHERE
A.TABLESPACE_NAME = B.TABLESPACE_NAME
AND A.FILE_ID = B.FILE_ID
--특정 테이블, 테이블스페이스 변경
alter table [테이블명] move tablespace [테이블 스페이스명]
--해당 테이블스페이스의 물리적인 파일의 이름 또는 위치변경
alter tablespace rename [A] to [B]
--해당 테이블스테이스의 용량을 1024메가로 변경
alter tablespace [테이블스페이스명] add datafile [추가할데이터파일명] size 1024M;
--해당 데이터파일경로에 해당하는 테이블스페이스의 크기가 FULL이 되면 자동으로 100메가씩 증가.
alter database datafile [데이터파일경로] autoextend on next 100m maxsize unlmited;
★ ★ ★ ★ ★ ★ ★ 삭제 주의, 삭제 옵션 다 이해 후 실행 필요 ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
★ ★ ★ ★ ★ ★ ★ 운영 중인 테이블스페이스 날림 철컹철컹 ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
--테이블스페이스 삭제
drop tablespace [테이블 스페이스명];
--테이블스페이스 내의 객체(테이블, 인덱스등)를 전체 삭제
drop tablespace [테이블 스페이스명] include contents;
--테이블스페이스의 모든 세그먼트를 삭제. (데이타가 있는 테이블 스페이스 제외)
drop tablespace [테이블 스페이스명] including contents;
--삭제된 테이블스페이스를 참조하는 다른 테이블스페이스의 테이블로부터 참조무결성 제약 조건을 삭제
drop tablespace [테이블 스페이스명] cascade constraints;
--테이블 스페이스의 물리적파일까지 삭제
drop tablespace [테이블 스페이스명] including contents and datafiles;
--테이블스페이스 생성
CREATE TABLESPACE TEST
DATAFILE '/PATH.../.../test.dbf'
SIZE 2048M
AUTOEXTEND ON
NEXT 4M MAXSIZE UNLIMITED
LOGGING PERMANENT EXTENT MANAGEMENT LOCAL AUTOALLOCATE
BLOCKSIZE 8K
SEGMENT SPACE MANAGEMENT MANUAL
FLASHBACK ON;
--생성 계정에 테이블스페이스 설정
CRAETE USER [사용자계정명] IDENTIFIED BY [비번] DEFAULT TABLESPACE TEST;
--테이블 만들 때 테이블스페이스 지정
CREATE TABLE [테이블명] ( ..... 내용 ...... ) TABLESPACE [존재하는 테이블스페이스명];
'DBMS > ORACLE' 카테고리의 다른 글
오라클 테이블 용량 확인 (0) | 2025.03.07 |
---|---|
오라클 가상 데이터 입력 및 속도, 테이블스페이스 용량 변화 (0) | 2025.03.04 |
오라클 최초 사용 - 사용자 계정 생성 (0) | 2025.03.04 |
DBA 무조건 로그인 (0) | 2025.03.04 |
오라클 설치 무한대기 오류 (0) | 2025.03.04 |