Ausführen:
sudo mysql -u root -p
mysql> SELECT @@global.sql_mode;
(Kopieren Sie dann optional die Ausgabe irgendwo in Ihre Notizen, falls Sie später zu diesen ursprünglichen Einstellungen zurückkehren möchten.)
Und ändere den SQL-Modus für Ihre MySQL Server-Instanz:
mysql> SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));
(Wenn Sie jemals einen Rollback durchführen möchten, können Sie etwas wie 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'; ausführen mit dem Wert, den Sie gespeichert haben.)
Ein dauerhafterer Weg (der Neustarts von MySQL überlebt) wäre die Verwendung der MySQL-Konfigurationen. Gehen Sie zu /etc/mysql/my.cnf (oder Sie müssen möglicherweise sudo vim /etc/mysql/mysql.conf.d/mysql.cnf ausführen ):
-
Fügen Sie einen Abschnitt für
[mysqld]hinzu und direkt darunter die Anweisungsql_mode = ""hinzufügen oder etwas wiesql_mode="STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION". -
Starten Sie den MySQL-Dienst neu:
sudo systemctl restart mysql
(oder sudo service mysql restart )
Siehe auch https://dba.stackexchange.com/a/113153/18098