Develop

mysql grants

작은이야기 2016. 5. 25. 22:30

새로 만든 DB 접근이 안된다.


[에러]


Authentication to host '100.110.57.100' for user 'xxidxx' using method 'mysql_native_password' failed with message: Access denied for user 'xxidxx'@'100.110.%.%' to database 'fffdb'


다른 디비는 접근이 다 되는데 fffdb에만 접근이 안된다.


검색!


mysql.db 테이블을 보면


select * from db where user='xxidxx';


Host       Db      User    

---------  ------  --------

100.110.%.%  fk%     xxidxx  


이렇게 나온다.


fk로 시작하는 db 에만 권한을 준것이다.




이제 유저의 권한으로 검색을 해보자


SHOW GRANTS FOR 'xxidxx'@'100.110.%.%';


Grantsfor xxidxx@100.110.%.%

------------------------------

GRANT SELECT, INSERT, UPDATE, DELETE, EXECUTE, TRIGGER ON `fk%`.* TO 'xxidxx'@'100.110.%.%'


이렇게 나온다.



그럼 fffdb 에도 접근 권한을 주자


grant select, insert, update, delete, on `fffdb`.*to 'xxidxx'@'100.110.%.%';


그리고 가장 중요한 마무리


FLUSH PRIVILEGES;



[결과 확인]


Grantsfor xxidxx@100.110.%.%

------------------------------

GRANT SELECT, INSERT, UPDATE, DELETE, EXECUTE, TRIGGER ON `fk%`.* TO 'xxidxx'@'100.110.%.%'

GRANT SELECT, INSERT, UPDATE, DELETE, EXECUTE, TRIGGER ON `fftdb`.* TO 'xxidxx'@'100.110.%.%'