계정도 만들어봤고, 데이터베이스도 만들어봤습니다.
특정 사용자에게 특정 데이터베이스를 사용할 수 있는 권한을 주는 방법을 알아보겠습니다.
테스트용으로 wp 라는 데이터베이스를 만들어둡니다. 사실 이후에 워드프레스 설치할 때 사용할 계획입니다.
mysql> create database wp;
wp 데이터베이스 사용자는 이전에 만들어 둔 ryu 를 이용하겠습니다.
그럼, ryu 에게 wp 데이터베이스를 맘대로 할 수 있는 권한을 주도록 하겠습니다.
GRANT ALL ON wp.* TO ‘ryu’@’localhost’;
GRANT ALL 은 모든 권한을 허락한다는 의미입니다. ALL 자리에 UPDATE나 SELECT 등을 사용하면 해당 SQL 문에 대한 사용권한을 허락해 줄 수 있습니다.
wp.* 는 wp 데이터베이스 안에 있는 모든 테이블을 의미합니다. 특정 테이블에 대한 권한만 설정하려면 wp.table1 같은 형태로 사용할 수 있습니다.
TO 이후 내용을 쉽게 이해가 되네요.
특정 사용자에게 부여되어 있는 권한을 확인하는 방법은 아래와 같습니다.
SHOW GRANTS FOR ‘사용자’@’호스트’;
mysql> SHOW GRANTS FOR ‘ryu’@’localhost’;
방금 설정해 준 권한이 보입니다.
그럼, 권한을 제거하는 방법도 알아보겠습니다.
제거하는 방법은 GRANT 대신에 REVOKE 를 사용하면 됩니다.
REVOKE ALL ON wp.* FROM ‘ryu’@’localhost’;
mysql> REVOKE ALL ON wp.* FROM ‘ryu’@’localhost’;
ryu 로부터 wp.* 에 대한 모든 권한을 폐지한다는 의미입니다.
여기까지 MySQL 사용자 계정에게 권한을 설정하는 방법을 살펴봤습니다.
Leave a Reply