1. GRANT
GRANT 권한1(컬럼1[,컬럼2,컬럼3...])[,권한2(컬럼1[,컬럼2,컬럼3...]), 권한3...]
ON [ 오브젝트명| 테이블명 | * ].[디비명]
TO 유저명 [IDENTIFIED BY '비밀번호']
[WITH 위드옵션[위드옵션2,...]]
ex)
grant all on *.* to 'test0'@'localhost' identified by 'test0';
grant select on *.* to 'test1'@'localhost' identified by 'test1';
grant select on *.* to 'test2'@'localhost' identified by 'test2' with grant option;
- 권한 종류
mysql DB의 user 테이블을 describe하면 권한_Privs 형식의 컬럼 명을 통해 권한 부여 가능.
- 권한 종류 뒤에 컬럼명을 지정해서 특정 컬럼에 대한 권한만 부여할 수도 있다.
- 위드 옵션
WITH GRANT OPTION을 통해 권한을 부여받은 유저는 다른 유저에게 자신이 행사하는 권한을 부여할 수 있다.
- 권한 부여자에게 CREATE USER 권한이 있고 유저가 존재하지 않을 경우 유저도 생성해준다.
2. REVOKE
REVOKE 권한1(컬럼1[,컬럼2,컬럼3...])[,권한2(컬럼1[,컬럼2,컬럼3...]), 권한3...]
ON [ 오브젝트명| 테이블명 | * ].[디비명]
FROM 유저명 [IDENTIFIED BY '비밀번호']
ex)
revoke all on *.* from 'test2'@'localhost';
- 부여했던 권한을 회수한다.
- WITH GRANT OPTION 으로 권한을 부여했던 유저의 권한이 회수되어도 하위 유저의 권한은 사라지지 않는다.
3. 사용자 계정 삭제
DROP USER [user명]@[server명];
ex) drop user user1@localhost;