※ TABLESPACE 란?
--> 세그먼트(테이블, 인덱스, ...)를 저장해두는 오라클의 논리적인 저장 구조를 의미한다.
-- (세그먼트: 오라클에서 저장공간을 필요로 하는 것을 말한다)
CREATE TABLESPACE TBS_EDUA -- 생성하겠다. 테이블스페이스를... TBS_EDUA라는 이름으로
DATAFILE 'C:\\TESTDATA\\TBS_EDUA01.DBF' -- 물리적 데이터 파일 경로 및 이름
SIZE 4M -- 사이즈(용량)
EXTENT MANAGEMENT LOCAL -- 오라클 서버가 세그먼트를 알아서 관리
SEGMENT SPACE MANAGEMENT AUTO; -- 세그먼트 공간 관리도 오라클 서버가 자동으로 관리
--==>>TABLESPACE TBS_EDUA이(가) 생성되었습니다.
※ 테이블스페이스 생성 구문을 실행하기 전에 해당 경로의 물리적인 디렉터리 생성이 필요하다.
-- (C:\TESTDATA)
생성된 테이블스페이스 조회
SELECT *
FROM DBA_TABLESPACES;
--==>>
/*
:
TBS_EDUA 8192 65536 1 2147483645 2147483645 65536 ONLINE PERMANENT LOGGING NO LOCAL SYSTEM NO AUTO DISABLED NOT APPLY NO HOST NO
*/
파일 용량 정보 조회(물리적인 파일 이름 조회)
SELECT *
FROM DBA_DATA_FILES;
--==>>
/*
:
C:\\TESTDATA\\TBS_EDUA01.DBF 5 TBS_EDUA 4194304 512 AVAILABLE 5 NO 0 0 0 3145728 384 ONLINE
:
*/
오라클 사용자 계정 생성
CREATE USER lyt IDENTIFIED BY 0000
DEFAULT TABLESPACE TBS_EDUA;
--==>> User LYT이(가) 생성되었습니다.
--> lyt라는 사용자 계정을 생성하고 패스워드는 0000부분에 설정
-- 이 계정을 통해 생성하는 오라클 세그먼트는 TES_EDUA 라는 테이블스페이스에 생성할 수 있도록 설정
※ 생성된 오라클 사용자 계정(각자 본인 이름 이니셜 계정)을 통해 접속 시도
→ 접속 불가(실패)
『create session』 권한이 없기 때문에 접속 불가.
생성된 오라클 사용자 계정(각자 본인 이름 이니셜 계정)에 오라클 서버 접속이 가능하도록 CTREATE SESSION 권한 부여
GRANT CREATE SESSION TO LYT;
--==>> Grant을(를) 성공했습니다.
SELECT *
FROM DBA_SYS_PRIVS;
--==>>
/*
LYT CREATE SESSION NO
*/
각자 생성한 오라클 사용자 계정에 테이블 생성이 가능하도록 CREATE TABLE 권한 부여
GRANT CREATE TABLE TO LYT;
--==>> Grant을(를) 성공했습니다.
각자 생성한 오라클 사용자 계정에 테이블 스페이스(TBS_EDUA) 에서 사용할 수 있는 공간(할당량) 지정.
ALTER USER LYT
QUOTA UNLIMITED ON TBS_EDUA; --(QUOTA가 할당량임, 이건 TBS_EDUA에서 무제한으로 할당)
--==>> User LYT이(가) 변경되었습니다.
부족하거나 잘못된 내용이 있을 경우 댓글 달아주시면 감사하겠습니다.
이 글에 부족한 부분이 존재할 경우 추후에 수정될 수 있습니다.
'SQL > Oracle' 카테고리의 다른 글
10. NVL, COALESCE, 컬럼연결(결합) (0) | 2022.03.06 |
---|---|
9. 컬럼 구조의 추가 및 제거 (0) | 2022.03.05 |
8. 테이블 복사, 커멘트 (0) | 2022.03.04 |
7. 오라클 주요 자료형 (0) | 2022.03.03 |
6. 관계형 데이터 베이스 (0) | 2022.03.02 |