In diesem Tutorial zeigen wir Ihnen, wie Sie den strengen MySQL-Modus auf Ihrem CentOS 7-Server deaktivieren. Für diejenigen unter Ihnen, die es nicht wussten:Der strenge Modus steuert, wie MySQL mit ungültigen oder fehlenden Werten umgeht in Datenänderungsanweisungen wie INSERT oder UPDATE. Ein Wert kann aus mehreren Gründen ungültig sein.
Dieser Artikel geht davon aus, dass Sie zumindest über Grundkenntnisse in Linux verfügen, wissen, wie man die Shell verwendet, und vor allem, dass Sie Ihre Website auf Ihrem eigenen VPS hosten. Die Installation ist recht einfach und setzt Sie voraus im Root-Konto ausgeführt werden, wenn nicht, müssen Sie möglicherweise 'sudo
hinzufügen ‘ zu den Befehlen, um Root-Rechte zu erhalten. Ich zeige Ihnen Schritt für Schritt, wie Sie den strengen MySQL-Modus auf einem CentOS 7-Server deaktivieren oder deaktivieren.
Voraussetzungen
- Ein Server, auf dem eines der folgenden Betriebssysteme ausgeführt wird:CentOS Linux.
- Es wird empfohlen, dass Sie eine neue Betriebssysteminstallation verwenden, um potenziellen Problemen vorzubeugen.
- Ein
non-root sudo user
oder Zugriff auf denroot user
. Wir empfehlen, alsnon-root sudo user
zu agieren , da Sie Ihr System beschädigen können, wenn Sie als Root nicht aufpassen.
Deaktiviert den strengen MySQL-Modus
Schritt 1. Beginnen wir zunächst mit der Sicherung der MySQL-Konf.
Dadurch wird sichergestellt, dass Sie Änderungen rückgängig machen können, wenn etwas schief geht,cp -a /usr/my.cnf{,.strict.bak}
cp -a /etc/my.cnf{,.strict.bak}
Es ist auch vorteilhaft, weil es dabei hilft, nachzuverfolgen, wann und welche Änderungen vorgenommen wurden:
cp -a /usr/my.cnf{,.strict.bak} cp -a /etc/my.cnf{,.strict.bak}
Schritt 2. Bearbeiten Sie die MySQL-Konfigurationsdateien.
Öffnen Sie die Datei mit Ihrem bevorzugten Befehlszeilen-Editor. In diesem Beispiel verwenden wir „nano“:
nano /etc/my.cnf
Suchen Sie die folgenden Zeilen:
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
Wenn Sie eine ähnliche Zeile wie die obige finden, die die Variable `sql_mode` setzt, müssen Sie sie durch die folgende Zeile ersetzen, um den strengen Modus von MySQL zu deaktivieren:
sql_mode=""
Starten Sie schließlich MySQL mit diesem Befehl neu:
systemctl restart mysql
Schritt 3. Bestätigen, dass der Strict SQL-Modus deaktiviert ist.
Um zu überprüfen, ob der Vorgang ordnungsgemäß abgeschlossen wurde, können Sie Folgendes ausführen:
mysql -e "SELECT @@sql_mode;"
Die Ausgabe könnte etwa wie folgt aussehen:
+--------------------------------------------+ | @@sql_mode +--------------------------------------------+ | NO_AUTO_CREATE_USER +--------------------------------------------+
Herzlichen Glückwunsch! Sie haben den strengen MySQL-Modus erfolgreich deaktiviert. Vielen Dank, dass Sie dieses Tutorial verwendet haben, um den strengen MySQL-Modus auf einem CentOS 7-System zu deaktivieren oder zu deaktivieren. Für zusätzliche Hilfe oder nützliche Informationen empfehlen wir Sie sehen auf der offiziellen MySQL-Website nach.