Облачные сервисы

Информационная безопасность

Размещение 1С в облаке

У клиента заметил что порой ну очень долго надо ждать пока построиться отчёт за месяц в ТИ и решил перенести базу на внешний БД. В качестве внешей БД был выбран бесплатный MySQL.

Инструкция по переносу от разработчика здесь. Впринципе нет ничего сложного.

 

Но в процессе работы обнаружил что БД не синхронизируется, вылетает ошибка:

[Синхронизация данных] Error - Ошибка проверки базы данных на внешнем SQL сервере - [MySQL][ODBC 5.1 Driver][mysqld-5.5.10-log]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)

что ну вообще очень неприятно, заметил я это только в середние месяца, ТИшка просто стирал статистику и не переносил на внешнюю базу.

Судя по яндексу, проблема довольна распространённая, но с одним но, из всех рекомендаций что я нашёл было:

01. Зайти в мускул и выполнить SET GLOBAL log_bin_trust_function_creators = 1;

что как выяснилось помогает только до первого перезапуска сервера, и

02. Вы можете также устанавливать эту переменную, используя опцию --log-bin-trust-function-creators при старте сервера.

что на Mysql для Windows в общем-то не сработало, хотя не сильно и ожидал что поможет, да и менять параметры сервиса через реестр не шибко хотелось.

В моём случае мне помогло следующее, открываем в папке с программой ( у меня напирмер C:\Program Files\MysqlServer) конфигурационный файлик my.ini и дописвыаем в секцию [mysqld] вот такую строчку:

log_bin_trust_function_creators = 1

и перезапускаем сервис, проверяем работу. Я больше с такой ошибкой не сталкивался.

Отзывы наших клиентов