1. DCL의 개념
- 데이터의 보안, 무결성, 회복, 병행제어 등을 정의하는데 사용하는 언어
- 데이터베이스 관리자가 데이더 관리를 목적으로 사용하는 언어
COMMIT | 데이터베이스 조작 작업을 영구적으로 반영하여 완료 |
ROLLBACK | 데이터베이스 조작 작업이 비정상적으로 종료되어 다시 원래 상태로 복구 |
GRANT | 데이터베이스 사용자에게 사용 권한 부여 |
REVOKE | 데이터베이스 사용자의 사용 권한을 취소 |
2. COMMIT / ROLLBACK
1) COMMIT
- 트랜잭션의 모든 변경내용들을 영구적으로 데이터베이스에 반영하는 명령어
- 트랜잭션이 성공적으로 끝나면 DB가 새로운 일관성 상태를 가지기 위해 수행된 모든 변경을 DB에 반영하여 완료(COMMIT)하여야 함
* 트랜잭션
- 하나의 논리적 기능을 수행하기 위한 일련의 연산 집합. 작업의 단위
- 회복 및 병행 제어 시에 처리되는 작업의 논리적 단위
- 하나의 트랜잭션은 COMMIT 되거나 ROLLBACK 되어야 함
2) ROLLBACK
- 변경된 모든 내용들을 취소하고 DB를 이전상태로 되돌리는 명령어
- 트랜잭션의 일부를 성공적으로 끝내지 못하면 DB가 비일관성인 상태를 가질 수 있으므로 (즉, 트랜잭션이 수행한 일부 변경이 DB에 반영될 가능성이
있기 때문에) 일부분만 완료된 트랜잭션은 롤백(ROLLBACK) 되어야 함
3. GRANT / REVOKE
- GRANT : 권한 부여를 위한 명령어
- REVOKE : 권한 취소를 위한 명령어
자기 자신에게 권한이 없어지면 해당 권한을 다른 사람에게 부여할 수 없음!!
1. 사용자 등급 지정 및 해제 |
GRANT 사용자등급 TO 사용자_ID_리스트[IDENTIFIED BY 암호]; |
REVOKE 사용자등급 FROM 사용자_ID_리스트; |
- 사용자 등급 DBA : 데베 관리자 / RESOURCE : 데베 및 테이블 생성 가능자 / CONNECT : 단순 사용자 |
2. 테이블 및 속성에 대한 권한 부여 및 취소 |
GRANT 권한_리스트 ON 개체 TO 사용자 [WITH GRANT OPTION] ; |
REVOKE [GRANT OPTION FOR] 권한_리스트 ON 개체 FROM 사용자 [CASCADE] ; |
권한 종류 ; ALL, INSERT, DELETE, UPDATE, ALTER 등 WITH GRANT OPTION : 부여받은 권한을 다른 사용자에게 다시 부여할 수 있는 권한을 부여 GRANT OPTION FOR : 다른 사용자에게 권한을 부여할 수 있는 권한을 취소 CASCADE : 권한 취소 시 권한을 부여받았던 사용자가 다른 사용자에게 부여한 권한도 연쇄적으로 취소 |
'[자격증] 정보처리기사' 카테고리의 다른 글
[정보처리기사][실기]2과목 16 내장 SQL, 스토어드 내장 프로시저, 이상 (0) | 2019.11.18 |
---|---|
[정보처리기사][실기]2과목 15 뷰 (0) | 2019.11.12 |
[정보처리기사][실기]2과목 13 SQL – DML (0) | 2019.11.12 |
[정보처리기사][실기]2과목 12 SQL – JOIN (0) | 2019.11.12 |
[정보처리기사][실기]2과목 11 SQL – SELECT (0) | 2019.11.12 |