Beim Upgrade von MySQL auf 5.7 meldet WordPress beim Importieren von Daten den Fehler 1067

Beim Upgrade von MySQL auf 5.7 meldet WordPress beim Importieren von Daten den Fehler 1067

Ich habe kürzlich MySQL auf 5.7 aktualisiert und WordPress hat beim Importieren von Daten einen Fehler gemeldet

Ungültiger Standardwert für „comment_date“

Der Grund dafür ist, dass Aussagen wie diese

Tabelle löschen, wenn `wp_comments` vorhanden ist;
Tabelle „wp_comments“ erstellen (
  `comment_ID` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT,
  `comment_post_ID` bigint(20) UNSIGNED NOT NULL DEFAULT 0,
  `comment_author` tinytext ZEICHENSATZ utf8mb4 SORTIMENT utf8mb4_unicode_520_ci NICHT NULL,
  `comment_author_email` varchar(100) ZEICHENSATZ utf8mb4 SORTIMENT utf8mb4_unicode_520_ci NICHT NULL STANDARD '',
  `comment_author_url` varchar(200) ZEICHENSATZ utf8mb4 SORTIMENT utf8mb4_unicode_520_ci NICHT NULL STANDARD '',
  `comment_author_IP` varchar(100) ZEICHENSATZ utf8mb4 SORTIMENT utf8mb4_unicode_520_ci NICHT NULL STANDARD '',
  `comment_date` datetime(0) NICHT NULL STANDARD '0000-00-00 00:00:00',
  `comment_date_gmt` datetime(0) NICHT NULL STANDARD '0000-00-00 00:00:00',
  `comment_content` Text Zeichensatz utf8mb4 Sortiert utf8mb4_unicode_520_ci nicht NULL,
  `comment_karma` int(11) NICHT NULL STANDARD 0,
  `comment_approved` varchar(20) ZEICHENSATZ utf8mb4 SORTIMENT utf8mb4_unicode_520_ci NICHT NULL STANDARD '1',
  `comment_agent` varchar(255) ZEICHENSATZ utf8mb4 SORTIMENT utf8mb4_unicode_520_ci NICHT NULL STANDARD '',
  `comment_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_520_ci NOT NULL DEFAULT '',
  `comment_parent` bigint(20) UNSIGNED NOT NULL DEFAULT 0,
  `user_id` bigint(20) UNSIGNED NOT NULL DEFAULT 0,
  PRIMÄRSCHLÜSSEL (`comment_ID`) MIT BTREE,
  INDEX `comment_post_ID`(`comment_post_ID`) USING BTREE,
  INDEX `Kommentar_genehmigt_Datum_gmt`(`Kommentar_genehmigt`, `Kommentar_Datum_gmt`) USING BTREE,
  INDEX `comment_date_gmt`(`comment_date_gmt`) MIT BTREE,
  INDEX `comment_parent`(`comment_parent`) USING BTREE,
  INDEX `comment_author_email`(`comment_author_email`(10)) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 35 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_520_ci ROW_FORMAT = Dynamisch;

Dieser Fehler wird hauptsächlich durch eine Inkompatibilität der Standardwerte beim Upgrade von MySQL auf 5.7 verursacht. Überprüfen Sie Ihren Feldnamen. Bei meinem handelt es sich um ein Zeitfeld und der Typ ist Datum/Uhrzeit. Es scheint, dass der Standardwert des Typs eingeschränkt sein könnte. Überprüfen Sie daher den SQL-Modus. Sicher genug: NO_ZERO_IN_DATE, NO_ZERO_DATE Diese beiden Parameter begrenzen die Zeit, die nicht 0 sein kann

Überprüfen Sie den SQL_Modus

mysql> Variablen wie „sql_mode“ anzeigen;
+-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
| Variablenname | Wert |
+-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
| SQL-Modus | NUR_VOLLSTÄNDIGE_GROUP_BY, STRENGE_TRANS_TABLES, KEINE_NULL_IM_DATUM, KEIN_NULL_DATUM, FEHLER_FÜR_DIVISION_DURCH_NULL, KEIN_AUTOMATISCHES_ERSTELLEN_BENUTZER, KEIN_ENGINE_SUBSTITUTION |
+-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
1 Zeile im Satz (0,00 Sek.)

MySQL>

Temporäre Änderung:

mysql> Sitzung festlegen
 -> sql_mode = 'NUR_VOLLSTÄNDIGE_GRUPPE_BY, STRENGE_TRANS_TABLES, FEHLER_FÜR_DIVISION_DURCH_NULL, KEIN_AUTOMATISCHES_ERSTELLEN_BENUTZER, KEIN_ENGINE_SUBSTITUTION';
Abfrage OK, 0 Zeilen betroffen, 1 Warnung (0,00 Sek.)

MySQL>

Dauerhafte Änderung:

Sie können die Datei my.cnf direkt ändern

Beispiel: vim /etc/my.cnf

Um das Problem zu beheben, ändern Sie die Konfigurationsdatei mysql.ini in der Windows-Umgebung ~

Fügen Sie unter [mysqld] die folgende Zeile hinzu:

sql_mode=NUR_VOLLSTÄNDIGE_GRUPPE_NUR, STRENGE_TRANS_TABELLEN, FEHLER_FÜR_DIVISION_DURCH_NULL, KEIN_AUTO_CREATE_USER, KEIN_ENGINE_SUBSTITUTION

Ok, das Problem ist gelöst, jetzt schauen Sie nach, wenn Sie eine Tabelle importieren oder erstellen!

Oben finden Sie ausführliche Informationen zur Lösung des Problems des WordPress-Datenimportfehlers 1067, wenn MySQL auf 5.7 aktualisiert wird. Weitere Informationen zum MySQL-Datenbankimportfehler 1067 finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM!

Das könnte Sie auch interessieren:
  • So verwenden Sie Navicat zum Exportieren und Importieren einer MySQL-Datenbank
  • Detaillierte Erläuterung des MySQL-Befehlszeilenexports und -imports einer Datenbankinstanz
  • Schritte zum Importieren einer MySQL-Datenbank unter Wampserver
  • MySQL-Befehlszeilen-Export und -Import von Datenbanken
  • Ändern Sie php.ini, um das maximale Limit der Änderungsmethode für MySQL-Importdatenbankdateien zu implementieren
  • Windows kann den MySQL-Dienst nicht starten und meldet Fehler 1067 – Lösung
  • MySQL-Dienst kann nicht gestartet werden und meldet Fehler 1067 – Lösung (MySQL-Startfehler 1067)

<<:  Detaillierte Erklärung zur Verwendung von INS und DEL zum Markieren von Dokumentänderungen

>>:  Implementierungscode von Nginx Anti-Hotlink und Optimierung in Linux

Artikel empfehlen

(MariaDB) Umfassende Erklärung der MySQL-Datentypen und Speichermechanismen

1.1 Übersicht über Datentypen Der Datentyp ist ei...

HTML-Tabellen-Markup-Tutorial (43): VALIGN-Attribut der Tabellenüberschrift

In vertikaler Richtung können Sie die Ausrichtung...

MySQL-Abfrageoptimierung mit benutzerdefinierten Variablen

Inhaltsverzeichnis Optimieren von Sortierabfragen...

Eine kurze Analyse des Reaktionsprinzips und der Unterschiede von Vue2.0/3.0

Vorwort Seit der offiziellen Einführung von vue3....

Allgemeine Probleme mit der Regelpriorität beim Nginx-Standort

Inhaltsverzeichnis 1. Standort / Matching 2. Stan...

Nexus nutzt API für den Betrieb

Nexus bietet RestApi, aber einige APIs müssen noc...