Error
ERROR 1418 (HY000): This function has none of the deterministic, NO SQL, or reads SQL DATA in its declaration and binary Loggi NG is enabled (for your *might* want to use the less safe log_bin_trust_function_creators variable)
ERROR 1418 (HY000): This function has none of the deterministic, NO SQL, or reads SQL DATA in its declaration and binary Loggi NG is enabled (for your *might* want to use the less safe log_bin_trust_function_creators variable)
Analysis:
The MySQL function cannot be created and is not turned on.
According to the system prompts, the cause of this error may be a security settings configuration, the search manual log_bin_trust_function_creators parameter default 0, is not allowed function synchronization, generally we are in the configuration of Repliaction, Forget to focus on this parameter, so after master updates funtion, slave will report the error and then slave stoped.
Processing process:
Workaround: MySQL function cannot be created and is not turned on:
code is as follows |
copy code |
Mysql> Show variables like '%func% '; + ——————————— + ——-+ | variable_name | Value | + ——————————— + ——-+ | log_bin_trust_function_creators | Off | + ——————————— + ——-+ 1 row in Set (0.00 sec) mysql> set global Log_bin_trust_function_creators=1; Query OK, 0 rows Affected (0.00 sec) Mysql> Show variables like '%func% '; + ——————————— + ——-+ | variable_name | Value | + ——————————— + ——-+ | log_bin_trust_function_creators | On | + ——————————— + ——-+ 1 row in Set (0.00 sec) mysql> |
If the above method does not successfully resolve the error 1418 errors in MySQL, then you have to use the following methods to try:
The first step: mysql> SET GLOBAL log_bin_trust_function_creators = 1;
Step two: When the system starts –log-bin-trust-function-creators=1
Step three: Add a line to the [mysqld] tag in the My.ini (Linux for my.conf) file Log-bin-trust-function-creators=1