Search

MySQL 사용자 권한 및 계정 추가/삭제

MySQL 5.7, 8.0 버전별 사용자 권한 정리

권한 설정

계정 생성 및 권한 부여

mysql 5.7
GRANT ALL PRIVILEGES ON DB_NAME.* TO USER_NAME@HOST_NAME IDENTIFIED BY 'USER_PW';
SQL
복사
mysql 8.+
# 사용자 추가 CREATE USER 'user'@'%' IDENTIFIED BY 'PASSWORD'; # 권한 설정 GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' WITH GRANT OPTION;
SQL
복사

권한 삭제

REVOKE ALL PRIVILEGES ON DB_NAME.* FROM USER_NAME@HOST_NAME;
SQL
복사

계정 설정 반영

FLUSH PRIVILEGES;
SQL
복사

실행 예제

DB명 dbname / 사용자명 userid / 접속 허용 호스트 - % / password passwd

새로운 사용자에게 권한 부여

# 데이타베이스 생성 CREATE DATABASE dbname; # 새로운 사용자 추가 및 권한 (5.7) GRANT ALL PRIVILEGES ON dbname.* TO userid@'%' IDENTIFIED BY 'passwd'; # 새로운 사용자 추가 및 권한 (8.+) CREATE USER 'userid'@'%' IDENTIFIED BY 'passwd'; GRANT ALL PRIVILEGES ON *.* TO 'userid'@'%' WITH GRANT OPTION; # 설정 반영 FLUSH PRIVILEGES;
SQL
복사

존재하는 계정에 DB를 추가할 경우..

# 다른 DB에 기존 사용자 추가 GRANT ALL PRIVILEGES ON 추가DB명.* TO userid@'%'; # 설정 반영 FLUSH PRIVILEGES;
SQL
복사

권한 삭제할 경우..

# 기존 사용자 권한 삭제 REVOKE ALL PRIVILEGES ON 추가DB명.* FROM userid@'%'; # 설정 반영 FLUSH PRIVILEGES;
SQL
복사

계정삭제

DROP USER userid@'%';
SQL
복사
ⓒ VeriCras 2024
vericras@gmail.com