Ошибка! innodb_strict_mode=ON, требуется OFF
Решение проблемы с innodb_strict_mode
Первый вариант
- Открываем в левом меню "Контент" => "Структура сайта" => "Файлы и папки".
- Переходим в директорию: /bitrix/php_interface/
- Открываем файл: after_connect_d7.php в режиме редактирования PHP кода.
- Вставляем строку:
$connection->queryExecute("SET innodb_strict_mode=0");
- Сохраняем
Полный конфиг файла after_connect_d7.php
$connection = \Bitrix\Main\Application::getConnection();
$connection->queryExecute("SET NAMES 'utf8'");
$connection->queryExecute('SET collation_connection = "utf8_unicode_ci"');
$connection->queryExecute('SET sql_mode=""');
$connection->queryExecute("SET innodb_strict_mode=0");
В этой же директории /bitrix/php_interface/
- Открываем файл: after_connect.php в режиме редактирования PHP кода.
- Вставляем строку:
$DB->Query("SET innodb_strict_mode=0");
- Сохраняем
Полный конфиг файла after_connect.php
$DB->Query("SET NAMES 'utf8'");
$DB->Query('SET collation_connection = "utf8_unicode_ci"');
$DB->Query("SET sql_mode=''");
$DB->Query("SET innodb_strict_mode=0");
Запускаем проверку системы еще раз.
Второй вариант
Если первый вариант не помог, значит необходимо внести правку в настройках MySQL. Для 1С-Bitrix окружения в файле /etc/mysql/conf.d/z_bx_custom.cnf добавить innodb_strict_mode = OFF
[mysqld]
innodb_strict_mode = OFF
После сохранения надо перезагрузить MySQL
service mysqld restart
После этого ошибки при проверке сайта не будет.