Mysql 사용자, 권한 관리

송준희·2022년 9월 8일
0

사용자 CRUD

사용자 목록 조회하기

select user, host from mysql.user;
select * from mysql.user;

사용자 생성하기

create user '{username}'@'{ipAddress}' identified by '{password}';

{ipAddress} 자리에
`localhost`를 입력하면 로컬에서만 접속할 수 있고
`%`를 입력하면 모든 외부에서 접속할 수 있고
`특정 IP 주소`( 192.168.0.123, 192.168.% )만 접속하도록 설정할 수 있다.

ex) create user 'caffelabel'@'%' identified by 'caffelabel';

사용자 제거하기

drop user '{username}'
delete from mysql.user '{username}'

사용자 권한 CRUD

권한 조회하기

show grants for '{username}';
ex) show grants for 'caffelabel';

권한 부여하기

grant {부여할 권한} on '{database}'@'{table}';
flush privileges;

권한의 종류에는 select, insert, update, delete 등이 있고
all privileges를 통해 root와 동일한 권한을 부여할 수 있다.

권한 부여 후 `flush privileges;` 명령어로 반영해야 한다.

ex) grant all privileges on *.* to 'caffelabel'@'localhost';
ex) grant select, update on 'myDatabase'.'*' to 'caffelabel'@'192.168.%';

권한 삭제하기

revoke {삭제할 권한} on '{database}'@'{table}' from '{username}'@'{ipAddress}';
flush privileges;

ex) revoke select, update on . from 'caffelabel'@'%';

profile
오늘 달리면 내일 걸을 수 있다!

0개의 댓글