전에 cmd로 MYSQL 사용자 정의 함수 설정중,
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)
위와 같은 오류가 발생했었습니다.
이와 관련된 간단 해결 방법은 하단 링크를 확인하시길 바랍니다.
오늘은 위 오류와 관련된 좀 더 자세한 내용을 설명드리겠습니다.
1. 함수 설정이 어떻게 되어 있는지 확인하는 법
2. 함수 설정을 뭐라고 바꾸면 되는지(2가지 방법)
알려드리도록 하겠습니다.
1. 함수 설정 ON & OFF 확인 방법
show global variables like 'log_bin_trust_function_creators';
위와 같이 입력하면,
함수 설정이 ON으로 되어 있는지 OFF로 되어 있는지 확인할 수 있습니다.
2. 함수 설정을 바꾸는 법은 2가지가 있습니다.
방법 1. mysql 서버를 시작할 때 다음 옵션을 추가 합니다.
--log-bin-trust-function-creators=1
방법 2. 데이터베이스 계정에 접속한 뒤 다음 코드를 실행합니다.
둘 다 같은 의미이기 때문에, 1과 ON 중 원하는걸 입력하시면 됩니다.
SET GLOBAL log_bin_trust_function_creators = 1;
SET GLOBAL log_bin_trust_function_creators = ON;
이렇게 하시면 ON으로 바뀌고,
SET GLOBAL log_bin_trust_function_creators = 0;
SET GLOBAL log_bin_trust_function_creators = OFF;
0과 OFF중 원하는걸 입력하면 OFF로 바뀝니다.
즉, ON일때만 function을 생성할 수 있습니다.
위와 같은 방법으로 ERROR 1418(HY000)을 이제 완벽히 해결할 수 있습니다.
다른 오류가 발생한다면 해결책과 함께 작성하도록 하겠습니다.
(물론 오류가 안생기는게 더 좋겠죠ㅎㅎ)
VCRUNTIME140_1.dll 오류에 대한 초간단 해결방법을 알고 싶으시다면 하단링크를 참조하시길 바랍니다.
https://developer-p.tistory.com/70
반응형
최근댓글