Search

MySQL Function 생성시 오류

MySQL v8.+ Function 생성시 오류 (This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled)
MySQL v8.+으로 넘어온 후 Function 생성시 오류 발생함.
ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)
Function 생성시 옵션 에러라고 하면서 v8.+에서 기본값이 변경된 것으로 보인다.
그래서 환경설정 값을 조회해 보았다. log_bin_trust_function_creators
show global variables like 'log_bin_trust_function_creators';
SQL
복사
위 설정값을 ON으로 변경을 해주면 되는데 아래와 같이 쿼리를 해주면 된다.
SET GLOBAL log_bin_trust_function_creators = 1; // ON # SET GLOBAL log_bin_trust_function_creators = 0; // OFF
SQL
복사
이제 Function 생성이 잘 된다.
다만 서버가 재부팅 될 경우 위 옵션이 다시 OFF 되므로 이 점만 유의하면 될 것 같다.
ⓒ VeriCras 2024
vericras@gmail.com