Spustit:
sudo mysql -u root -p
mysql> SELECT @@global.sql_mode;
(Poté volitelně zkopírujte výstup někam do poznámek pro případ, že byste se později chtěli vrátit k původnímu nastavení.)
A změňte režim SQL pro vaši instanci serveru MySQL:
mysql> SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));
(Pokud se někdy budete chtít vrátit zpět, můžete spustit něco jako mysql> SET GLOBAL sql_mode='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'; pomocí hodnoty, kterou jste uložili.)
Trvalejším způsobem (který přežije restartování MySQL) by bylo použití konfigurací MySQL. Přejděte na /etc/mysql/my.cnf
(nebo možná budete muset spustit sudo vim /etc/mysql/mysql.conf.d/mysql.cnf
):
-
Přidejte sekci pro
[mysqld]
a hned pod něj přidejte příkazsql_mode =""
nebo něco jakosql_mode="STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION"
. -
Restartujte službu MySQL:
sudo systemctl restart mysql
(nebo restart služby sudo mysql
)
Viz také https://dba.stackexchange.com/a/113153/18098