mysql 계정에 권한 주기
사용자 확인
>use mysql;
> select user, host from user;
사용자 권한 확인
> SHOW GRANTS FOR [사용자계정@호스트];
> SHOW GRANTS FOR CURRENT_USER; (현재 접속된 사용자 권한 확인)
사용자 권한 부여
(1) 계정 생성과 함께 권한 부여
> GRANT all privileges ON test.* to 'test2'@'localhost' identified by '비밀번호' ;
(local접속만 허용하는 test2 사용자에게 test 데이터베이스에 대한 select,insert,update,delete,create,drop,index,alter 권한을 추가)
(2) 기존 계정에 권한 추가
> GRANT select,insert,update,delete,create,drop,index,alter ON test.* to 'test2'@'localhost' ;
> local접속만 허용하는 test2 사용자에게 test 데이터베이스에 대한 select,insert,update,delete,create,drop,index,alter 권한을 추가
* 누적으로 추가가 됨
모든권한
> GRANT ALL ON test.* to 'test2'@'localhost' ;
변경사항 적용
> flush privileges;
=================================
ALL - 모든 권한 부여
ALTER - ALTER TABLE 사용 가능
CREATE - CREATE TABLE 사용 가능
CREATE TEMPORARY TABLES - CREATE TEMPORARY TABLES 사용 가능
SELECT, DELETE, UPDATE, DROP - 조회,수정,삭제 권한 가능
EXCUTE
FILE - SELECT.. INTO OUTFILE LOAD DATA INFILE 사용 가능
INDEX - CREATE INDEX , DROP INDEX 가능
LOCK TABLES - SELECT 권한있을 때 LOCK TABLES 가능
PROCESS - SHOW FULL PROCESSLIST 가능
SHUTDOWN - SHUTDOWN 가능
SHOW DATABASES - SHOW DATABASES 가능
RELOAD - FLUSH 가능
=================================