본문 바로가기

~2023

[MySQL] MySQL 사용자 추가 및 권한 추가

728x90
반응형

MySQL 사용자를 추가하는 방법과 사용자에게 권한을 추가하는 방법을 알아보자

 

MySQL 접속 후 현재 사용자 리스트를 확인해보자

-- 접속
$ mysql -u root -p

-- DB 포커싱
mysql> use mysql;

-- 테이블 보기
mysql> select user, host from user;

사용자 추가

-- id: 원하는 유저명, 'password'는 String으로
mysql> CREATE USER id@localhost IDENTIFIED BY 'password';

사용자 권한 추가

-- 전체 DB에 전체 권한 추가
GRANT ALL ON *.* TO id@localhost;


-- 전체 DB에 대한 select, insert 권한 추가
GRANT SELECT, INSERT ON *.* TO id@localhost;



-- 특정 DB(mydb)에 대한 전체 권한 추가
GRANT ALL ON mydb.* TO id@localhost;



-- 특정 DB(mydb)에 대한 select, insert 권한 추가
GRANT SELECT, INSERT ON mydb.* TO id@localhost;



-- 특정 DB(mydb)에 포함된 특정 Table(mytbl)대한 전체 권한 추가
GRANT ALL ON mydb.mytbl TO id@localhost;



-- 특정 DB(mydb)에 포함된 특정 Table(mytbl)에 대한 select, insert 권한 추가
GRANT SELECT, INSERT ON mydb.mytbl TO id@localhost;

사용자 권한 확인

SHOW GRANTS FOR id@localhost;

사용자 권한 수정, 삭제

-- 읽기, 쓰기, 수정 권한을 준다.
GRANT SELECT, INSERT, UPDATE ON *.* TO id;


-- 쓰기, 수정 권한을 삭제한다.
-- 유저는 db1 의 경우는 읽기만 가능하다.
REVOKE INSERT, UPDATE ON db1.* FROM id;


-- 사용자 전체 권한 삭제
REVOKE ALL ON *.* FROM id@localhost;


-- 아래처럼 특정 권한만 전체 삭제할 수도 있다.
-- 사용자 전체 쓰기 권한 삭제
REVOKE INSERT ON *.* TO id@localhost;

사용자 삭제

DROP USER id@localhost

 

 

 

 

 

728x90
반응형