
Estou tendo alguns problemas com as alterações da cláusula group by no MySQL 5.7. Continuo recebendo um erro indicando que preciso corrigir algumas consultas para permitir que ele seja executado corretamente. Eu segui algumas coisas diferentes, mas a única coisa que descobri que funciona foi executar as seguintes consultas no servidor:
set global sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
set session sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
Fazer isso elimina os erros e permite que meu aplicativo seja executado.
Eu tentei adicionar:
sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
no /etc/mysql/my.cfg
entanto, isso causou alguns problemas porque os números de incremento automático não estavam mais sendo gerados, portanto, todas as inserções falharam.
Isso está acontecendo agora em vários servidores e é doloroso continuar executando consultas se algum deles for reiniciado.
Alguém pode me ajudar a resolver esse problema?
Responder1
Para configurar o modo SQL na inicialização do servidor, use a
--sql-mode="modes"
opção na linha de comando ousql-mode="modes"
em um arquivo de opções como my.cnf (sistemas operacionais Unix) ou my.ini (Windows). modos é uma lista de modos diferentes separados por vírgulas. Para limpar o modo SQL explicitamente, defina-o como uma string vazia usando --sql-mode="" na linha de comando ou sql-mode="" em um arquivo de opções.
Inclua as aspas em seu arquivo my.cnf
.