본문 바로가기

DATABASE

[ORACLE] Oracle 사용자생성, 테이블스페이스 등록

[출처] 자바놀이터 cafe.naver.com/sikurah

$sqlplus /nolog
sql>connect / as sysdba
sql>create user user1 identifed by user1passwd default tablespace user temporary tablespace temp;
sql>grant connect,resource to user1;

▩ Oracle Setting
---------------------------------------------------------------------------
1. 오라클 계정 설정 전체 작업

※C:\oracle\data\200703 폴더는 미리 만들어야 합니다.

-- 테이블 스페이스 생성
CREATE TABLESPACE 테이블스페이스이름
DATAFILE 'C:\oracle\data\200703\TS_ojt_03_239.dbs' size 20M
DEFAULT STORAGE (initial 128k next 64k pctincrease 10);

-- 테이블 스페이스 목록
SELECT tablespace_name, status, contents
FROM dba_tablespaces
WHERE tablespace_name LIKE '테이블스페이스이름%'
ORDER BY tablespace_name;

-- 사용자 생성
CREATE USER 사용자이름 IDENTIFIED BY 비밀번호
DEFAULT TABLESPACE 테이블스페이스이름
TEMPORARY TABLESPACE temp;

-- 등록된 계정 목록 보기
SELECT username, user_id FROM dba_users
WHERE username LIKE '사용자이름%' ORDER BY username;

-- 권한 주기
GRANT connect, resource TO 사용자이름;

※ Oracle 설정 참고

1. 테이블 스페이스 생성
- 테이블 스페이스 생성시 "C:\oracle\data\200703" 폴더는 미리 만들어야 합니다.

CREATE TABLESPACE테이블스페이스이름

DATAFILE 'C:\oracle\data\200703\TS_ojt_03_239.dbs' size 20M
DEFAULT STORAGE (initial 128k next 64k pctincrease 10);

2. 테이블 스페이스 목록 보기

SELECT tablespace_name, status, contents
FROM dba_tablespaces
WHERE tablespace_name LIKE '테이블스페이스이름%'
ORDER BY tablespace_name;

3. 테이블 스페이스의 사용 가능한 공간 보기
SELECT tablespace_name, bytes, blocks
FROM dba_free_space

ORDER BY tablespace_name;

4. TableSpace의 삭제 : DROP TABLESPACE 테이블스페이스이름;
- 테이블 스페이스를 삭제해도 하드디스크상에 데이터 파일은 남아 있음으로
"D:\oracledata\200601" 상에서도 파일을 삭제해야 합니다.

ALTER TABLESPACE테이블스페이스이름 OFFLINE;
DROP TABLESPACE테이블스페이스이름 INCLUDING CONTENTS AND DATAFILES;

SELECT tablespace_name, status, contents FROM dba_tablespaces ORDER BY tablespace_name;

5. 사용자 계정 생성 및 권한 지정
- 계정의 종류
. SYS: 오라클 데이터베이스 관리자
. SYSTEM: 오라클 데이터베이스 관리자, 모든 권한이 SYS와 같으나 데이터베이스 생성 권한 없음
. SCOTT, HR: SAMPLE 사용자 계정

- 계정의 생성
CREATE USER사용자이름 IDENTIFIED BY비밀번호
DEFAULT TABLESPACE테이블스페이스이름
TEMPORARY TABLESPACE temp;

6. 등록된 계정 목록 보기
SELECT username, user_id FROM dba_users
WHERE username LIKE '사용자이름%' ORDER BY username;

7. 사용자 삭제
DROP USER 사용자이름

8. 권한 주기
- connect : 접속, 쿼리 실행, 테이블 생성
- resource : view, stored Procedure 등 서버의 자원을 만들고 쓸수 있는 권한

GRANT connect, resource TO 사용자이름;

#Oracle system 계정---------------------------------------------

SELECT * FROM tab;

--테이블 스페이스 생성(시 C:\oracle\data\200703 폴더는 미리 만들어야 합니다.)
CREATE TABLESPACE 테이블스페이스이름
DATAFILE 'C:\oracle\data\200703\TS_ojt_03_232.dbs' size 20M
DEFAULT STORAGE (initial 128k next 64k pctincrease 10);

--테이블 스페이스 목록
SELECT tablespace_name, status, contents
FROM dba_tablespaces
WHERE tablespace_name LIKE '테이블스페이스이름%'
ORDER BY tablespace_name;

--테이블 스페이스의 삭제, 파일은 탐색기에서 직접 삭제
DROP TABLESPACE 테이블스페이스이름;

--계정의 생성
CREATE USER ojt_03_232 IDENTIFIED BY oracle
DEFAULT TABLESPACE 테이블스페이스이름
TEMPORARY TABLESPACE temp;

--등록된 계정 목록 보기, 대문자(OJT_03)
SELECT username, user_id FROM dba_users
WHERE username LIKE '사용자이름%' ORDER BY username;

--권한주기
GRANT connect, resource TO 사용자이름;

--사용자 삭제
DROP USER 사용자이름;