728x90
DCL(데이터 제어어 : Data Control Language) 란?
- 데이터베이스에 권한을 부여하는 언어
* 데이터베이스 테이블에 직접적인 영향을 미치기 때문에 DCL 을 입력하는 순간 명령어에 해당하는 작업이 즉시 (AUTO COMMIT)된다.
종류 | 설명 |
GRANT | 데이터베이스에 대한 사용자의 액세스(접근)권한을 제공 (특정 사용자만 특정작업을 할 수 있도록 지정 가능) |
REVOKE | GRANT명령으로 주어진 접근 권한을 철회 |
<예시>
GRANT
GRANT 권한 종류 ON 대상 TO 계정명 IDENTIFIED BY 암호 [WITH GRANT OPTION];
-- 모든 권한을 가진 계정 생성
GRANT ALL ON *.* to root2 IDENTIFIED by 1234;
--특정 데이터베이스에 조회권한을 가진 계정 생성
GRANT SELECT ON test.*(권한 종류) TO root3 IDENTIFIED BY 12345;
-- GRANT로 계정생성 후 아래의 명령어를 실행해야 적용된다.
FLUSH privileges;
REVOKE
-- 권한 해제 명령어
REVOKE insert, update, create ON [DB명.테이블명] TO [계정명];
--전체 권한 해제 명렁어
REVOKE ALL ON [DB명.테이블명] TO [계정명];
TCL(트랜젝션 제어어 : Transaction Control Language)란?
- 데이터의 보안, 무결성, 회복, 병행, 수행제어 등을 정의하는데 사용
종류 | 설명 |
COMMIT | 트랜젝션의 작업 결과를 저장 및 반영 |
ROLLBACK | 마지막 COMMIT된 시점의 상태로 복원 |
SAVEPOINT | 저장점(SAVEPOINT)를 지정하면 롤백할때 트랜젝션이 포함된 전제 작업을 롤백하는 것이 아닌 현 시점에서 저장점까지의 일부 트랜젝션만 롤백 |
SET TRANSACTION |
TRANSACTION 지정 |
728x90
반응형
'Self Study > SQLD' 카테고리의 다른 글
[SQLD] SQL문 중요 간단 정리! :) (0) | 2022.11.01 |
---|---|
[SQLD] 연산자와 내장함수(Stored Function) (2) | 2022.11.01 |
[SQLD] DML( 데이터 조작어 : Data Manipulation Language) (2) | 2022.11.01 |
[SQLD] DDL( 데이터 정의어 : Data Definition Language) (0) | 2022.10.28 |
[SQLD] SQL(Structured Query Language) (0) | 2022.10.28 |