USER 생성 ( User 생성 권한이 있는 계정에서 가능 )
CREATE USER 유저이름 IDENTIFIED BY 암호;
Ex ) Create User BLOG Identified by 123; - BLOG 란 이름과 123 이란 암호로 생성
[[[[[ 기타 OPTION [[[[[
EXTERNALLY : 사용자가 운영체제에 의해 인증되도록 지정.
DEFAULT TABLESPACE : 사용자 스키마를 위한 기본 테이블 스페이스를 지정.
TEMPORARY TABLESPACE : 사용자의 임시 테이블 스페이스를 지정.
QUOTA 절 : 사용자가 사용할 테이블 스페이스의 영역을 할당.
PASSWORD EXPIRE : 사용자라 SQL*PLUS를 사용하여 데이터베이스에 로그인 할 때 암호를
재설정 하도록 합니다.
(사용자가 데이터베이스에 의해 인증될 경우에만 적합한 옵션)
ACCOUNT LOCK / UNLOCK : 사용자 계정을 명시적으로 잠그거나 풀때 사용 (UNLOCK 기본값)
PROFILE : 자원사용을 제어하고 사용자에게 사용되는 암호 제어 처리 방식을 지정하는데 사용.
※참고
임시 테이블스페이스를 지정해 주지 않으면 시스템 테이블스페이스가 기본으로 지정 되짐만 시스템 테이블
스페이스에 단편화가 발생 할 수 있으므로 사용자를 새성할 때 임시 테이블스페이스를 따로 지정해 주는것이 좋다.
DEFAULT TABLESPACE도 사용자를 생성할 때 지정해 주지 않으면 기본적으로 시스템 테이블스페이스가
지정됩니다. 하지만 사용자를 생성할 때 DEFAULT TABLESPACE를 지정해서 사용자가 소유한 데이터와
체들의 저장 공간을 별도로 관리해야 한다.
시스템 테이블 스페이스는 본래의 목적( 모든 데이터 사전 정보와, 저장 프로시저, 패키지, 데이터베이스 트리거등을
저장) 을 위해서만 사용되어져야 하지 일반 사용자의 데이터 저장용으로 사용되어서는 안된다.
테이블 스페이스란?
오라클 서버가 데이터를 저장하는 논리적은 구조.
테이블 스페이스는 하나 또는 여러개의 데이터 파일로 구성되는 논리적은 데이터 저장구조.
Ex ) Create User BLOG Identified by 123 BLOG란 이름과 123이란 암호를 가지고 유저 생성하면서
Default Tablespace SPACE1 기본 테이블 스페이스는 SPACE1
Temporary Tablespace SPACE2 임시 테이블 스페이스는 SPACE2
Quota 100M On SPACE1; SPACE1 를 100M 까지만 사용하도록 한다.
]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
USER 권한 주기
GRANT Connect, Recourse, Dba TO 유저이름;
접속, DB에 대해 테이블 생성, 수정, 삭제. 조회등을 할 수 있는 권한 부여.
GRANT 부여할권한 TO 유저이름;
Ex ) GRANT Create User, Alter User, Drop User TO BLOG WITH AMDIN OPTION;
- BLOG 에게 유저 생성, 변경, 삭제하는 권한을 부여하고 또 누군가에게 그 권한을
부여할 수 있게 해주었다.
권한 철회
Ex) REVOKE Create User, Alter User, Drop User FROM BLOG;
- BLOG의 유저 생성, 변경, 삭제 권한을 회수 한다.
권한이란..?
오라클에서 권한(Privilege)은 특정 타입의 SQL문을 실행하거나 데이터 베이스나 데이터베이스 객체에
접근 할 수 있는 권리이다.
SYSTEM PRIVILEGES(시스템 권한)
시스템 권한은 사용자가 데이터베이스에서 특정 작업을 수행할 수 있도록 한다.
약 126개의 시스템 권한이 있으며 그 수는 계속 증가하고 있다.
권한의 ANY 키워드는 사용자가 모든 스키마에서 권한을 가짐을 의미한다.
GRANT 명령은 사용자 또는 Role에 대해서 권한을 부여한다.
REVOKE 명령은 권한을 삭제한다.
시스템 권한의 몇가지 종류
CREATE SESSION : 데이터 베이스를 연결할 수 있는 권한.
CREATE ROLE : 오라클 데이터 베이스 역할을 생성할 수 있는 권한.
CREATE VIEW : 뷰의 생성 권한.
ALTER USER : 생성한 사용자의 정의를 변경할 수 있는 권한.
DROP USER : 생성한 사용자를 삭제 시키는 권한.
system_privilege : 부여할 시스템 권한의 이름.
role : 부여할 데이테 베이스 역할의 이름.
user, role : 부여할 사용자 이름과 다른 데이터 베이스 역할 이름.
PUBLIC : 시스템 권한 또는 데이터 베이스 역할을 모든 사용자에게 부여할 수 있다.
WITH ADMIN OPTION : 권한을 부여받은 사용자도 부여받은 권한을 다른 사용자 또는 역할로 부여
할 수 있게 되며, 만약 사용자가 WITH ADMIN OPTION 과 같이 역할을 부여
받는다면 역할은 그 사용자에 의해 변경 또는 삭제 될 수 있다.
]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
USER 변경
비밀번호 수정
ALTER USER 유저이름 IDENTIFIED BY 변경할암호;
Ex ) Alter User BLOG Identified By 456; BLOG의 암호를 456으로 변경.
ALTER USER문으로 변경 가능한 옵션
비밀번호
운영체제 인증
디폴트 테이블 스페이스 ( DEFAULT TABLESPACE )
임시 테이블 스페이스 ( TEMPORARY TABLESPACE )
테이블 스페이스 분배 할당
프로파일 및 디폴트 역할
]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
USER 조회
SELECT username, default_tablespace, temporary_tablespace FROM DBA_USERS;
DBA_USERS 에 모든 USER들이 저장되어 있다.
]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
USER 삭제
DROP USER BLOG; - BLOG 라는 사용자를 삭제 해 버린다.
'Oracle > SQL' 카테고리의 다른 글
[ORACLE] 권한(GRANT) 설정 (0) | 2011.03.24 |
---|---|
TABLESPACE 만들기 (0) | 2011.03.24 |
sqlplus 프롬프트 유저로 나타내기, sql 수행시간 속도 표시, sql 실행시간 표시 (0) | 2011.03.24 |
SQL 명령어 정리 (0) | 2011.03.02 |
sqlplus 방향키 안될때 적용 방법입니다. (0) | 2011.02.28 |