본문 바로가기

Database/MySQL

MySQL Procedure Privileges

개발할때 일반 계정에 다음과 같이 모든 권한을 주는데 사실 파트별로 필요한 권한을 주는것이 맞다.

GRANT ALL PRIVILEGES ON *.* TO USER@'host';

귀찮아서 미루다 보면 권한은 나중에 꼭 해깔리고, 한 번에 작업이 끝나지 않는 경우도 많음

사용자에 procedure 권한은 다음과 같이 줄 수 있다.

 GRANT EXECUTE, CREATE ROUTINE, ALTER ROUTINE ON DATABASE_NAME.* TO USER@'host';

일반 계정에 create 권한을 주려면 환경변수 값을 변경해줘야 한다.

SET GLOBAL log_bin_trust_function_creators = 1;

이렇게 적어 두었으니 까먹더라도 여기로 오겠지?