MySQL 계정에 권한 설정하는 방법

계정도 만들어봤고, 데이터베이스도 만들어봤습니다.

특정 사용자에게 특정 데이터베이스를 사용할 수 있는 권한을 주는 방법을 알아보겠습니다.

테스트용으로 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 사용자 계정에게 권한을 설정하는 방법을 살펴봤습니다.


Comments

Leave a Reply

Your email address will not be published. Required fields are marked *