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 : 권한 취소 시 권한을 부여받았던 사용자가 다른 사용자에게 부여한 권한도 연쇄적으로 취소

 

+ Recent posts