Backend/Database

mysql, mariaDb 계정 생성 및 권한 부여

얌얌념념 2022. 6. 14. 11:12

mysql, mariaDB에 모두 동일하게 동작하는 명령어 입니다. 왜 동일하게 동작할까?

 

계정 생성

create user '[userid]'@'[host]' identified by '[password]';

userid에는 사용하고자 하는 계정의 id를 적어주면 된다.

host는 db에 접근하기 위해 이 계정을 사용할 수 있는 호스트 정보를 적어주면 된다. 내 로컬 호스트에서만 사용하고 싶다면 @'localhost', 모든 호스트에서 접근을 허용하려면 @'%'로 적어준다.

 

생성된 계정 확인

show databases;
use mysql;
select host, user, password from user;

맨 아래 행에 방금 만든 계정을 확인할 수 있다.

 

계정 삭제

drop user '[userid]'@'[host]';

user table에서 해당 계정이 삭제되었음을 확인할 수 있다.

 


계정 권한 주기

grant [privileges] on [database].[table] to '[userid]'@'[host]';

privileges에는 이런 권한들이 있다. 참고해서 적어보자.

 

계정에 부여된 권한 확인

show grants for '[userid]'@'[host]';

 

계정 권한 회수

revoke [privileges] on [database].[table] to '[userid]'@'[host]';

모든 권한을 부여한 ssafy 계정에서 delete 권한을 회수

delete 권한만 빠져있는 모습