[SQL] DCL의 모든 것
DCL은 Data Control Language의 약자로, 'USER'를 생성하고, 'USER'에게 데이터를 컨트롤할 수 있는 권한을 부여하거나 회수하는 명령어이다.
`CREATE USER`, `ALTER USER`, `DROP USER` 등이 있다.
Aug 28, 2024
DCL은 Data Control Language의 약자로,
USER
를 생성하고, USER
에게 데이터를 컨트롤할 수 있는 권한을 부여하거나 회수하는 명령어이다.CREATE USER
, ALTER USER
, DROP USER
등이 있다.✅ 1. USER 관련 명령어1) CREATE USER2) ALTER USER3) DROP USER✅ 2. 권한 관련 명령어1) GRANT2) REVOKE✅ 3. ROLE 관련 명령어1) ROLE을 이용한 권한 부여
✅ 1. USER 관련 명령어
하나의 데이터베이스는 여러 개의
USER
를 가질 수 있다.1) CREATE USER
사용자를 생성하는 명령어이다.CREATE USER
권한이 있어야 수행 가능하다.
CREATE USER 사용자명 IDENTIFIED BY 비밀번호;
2) ALTER USER
사용자를 변경하는 명령어이다.
예시 1: 비밀번호 변경
ALTER USER 사용자명 IDENTIFIED BY 새비밀번호;
여기서
username
은 변경하려는 사용자 계정의 이름이다.예시 2: 계정 잠금
ALTER USER 사용자명 ACCOUNT LOCK;
예시 3: 계정 잠금 해제
ALTER USER 사용자명 ACCOUNT UNLOCK;
3) DROP USER
사용자를 삭제하는 명령어이다.
DROP USER 사용자명;
✅ 2. 권한 관련 명령어
사용자를 만들고 비밀번호를 부여했다면, 이제 권한을 부여해야 한다.
1) GRANT
사용자에게 권한을 부여하는 명령어이다.
GRANT 권한 TO 사용자명; // 예시 GRANT CREATE SESSION TO 사용자명; GRANT CREATE USER TO 사용자명; GRANT CREATE TABLE TO 사용자명;
2) REVOKE
사용자로부터 권한을 회수하는 명령어이다.
REVOKE 권한 FROM 사용자명; //예시 REVOKE CREATE TABLE FROM 사용자명;
✅ 3. ROLE 관련 명령어
ROLE이란 특정 권한들의 집합이다.
예를 들어,
CREATE SESSION
, CREATE USER
, CREATE TABLE
권한을 묶어 CREATE_SET
이라 지정할 수 있다.1) ROLE을 이용한 권한 부여
- ROLE 생성
CREATE ROLE 롤명;
- ROLE에 권한 부여
GRANT 권한 TO 롤명;
- ROLE을 사용자에게 부여
GRANT 롤명 TO 사용자명;
Share article