MySQL 5.7 отключение ONLY_FULL_GROUP_BY

Скачать MySQL 5.7 отключение ONLY_FULL_GROUP_BY
Сейчас ищут:

Itnull

Команда форума
Администратор
Регистрация
22.05.13
Сообщения
24.511
Реакции
8.231
Веб-сайт
itnull.me
  • Автор темы
  • Администратор
  • Модер.
  • Команда форума
  • #1
MySQL 5.7 отключение ONLY_FULL_GROUP_BY

В MySQL 5.7 появился такой режим как ONLY_FULL_GROUP_BY, который более строго обрабатывает запросы с GROUP_BY. Подробнее можно почитать в документации.
По хорошему, конечно, запросы выпадающие с подобной ошибкой нужно пересмотреть и переписать. Но если она выпала "внезапно" после обновления, да еще и на production-сервере, быстрым решением проблемы будет отключение этого режима.
Подключаемся к MySQL:

# mysql -u root -p
вводим пароль и командуем:

Код:
 mysql> SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode, "ONLY_FULL_GROUP_BY,", ""));

и
Код:
 mysql> SET SESSION sql_mode=(SELECT REPLACE(@@sql_mode, "ONLY_FULL_GROUP_BY,", ""));

тем самым меняем значение на прежнее, но за исключением подстроки "only_full_group_by,".
Проверить результат и убедиться что режим выключен можно командой:

Код:
 mysql> SELECT @@sql_mode;

Плюс такого подхода в том, что перезапуск MySQL-сервера не требуется.
 
  • Автор темы
  • Администратор
  • Модер.
  • Команда форума
  • #2
или
/etc/mysql/my.cnf
[mysqld]
sql_mode = "NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
 
Последнее редактирование:
Назад
Сверху Снизу