MySQLを5.7にアップグレードすると、WordPressはデータをインポートするときにエラー1067を報告します

MySQLを5.7にアップグレードすると、WordPressはデータをインポートするときにエラー1067を報告します

最近MySQLを5.7にアップグレードしましたが、WordPressでデータのインポート時にエラーが発生していました。

'comment_date' のデフォルト値が無効です

その理由は、このような発言が

`wp_comments` が存在する場合はテーブルを削除します。
テーブル `wp_comments` を作成します (
  `comment_ID` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT,
  `comment_post_ID` bigint(20) UNSIGNED NOT NULL デフォルト 0,
  `comment_author` tinytext 文字セット utf8mb4 COLLATE utf8mb4_unicode_520_ci NOT NULL,
  `comment_author_email` varchar(100) 文字セット utf8mb4 照合 utf8mb4_unicode_520_ci NOT NULL デフォルト '',
  `comment_author_url` varchar(200) 文字セット utf8mb4 照合 utf8mb4_unicode_520_ci NOT NULL デフォルト '',
  `comment_author_IP` varchar(100) 文字セット utf8mb4 照合 utf8mb4_unicode_520_ci NOT NULL デフォルト '',
  `comment_date` datetime(0) NOT NULL デフォルト '0000-00-00 00:00:00',
  `comment_date_gmt` datetime(0) NOT NULL デフォルト '0000-00-00 00:00:00',
  `comment_content` テキスト文字セット utf8mb4 COLLATE utf8mb4_unicode_520_ci NOT NULL、
  `comment_karma` int(11) NOT NULL デフォルト 0,
  `comment_approved` varchar(20) 文字セット utf8mb4 COLLATE utf8mb4_unicode_520_ci NOT NULL デフォルト '1',
  `comment_agent` varchar(255) 文字セット utf8mb4 照合 utf8mb4_unicode_520_ci NOT NULL デフォルト '',
  `comment_type` varchar(20) 文字セット utf8mb4 COLLATE utf8mb4_unicode_520_ci NOT NULL DEFAULT '',
  `comment_parent` bigint(20) UNSIGNED NOT NULL デフォルト 0,
  `user_id` bigint(20) UNSIGNED NOT NULL デフォルト 0,
  BTREEを使用した主キー(`comment_ID`)
  インデックス `comment_post_ID`(`comment_post_ID`) BTREE 使用、
  インデックス `comment_approved_date_gmt`(`comment_approved`, `comment_date_gmt`) BTREE を使用、
  インデックス `comment_date_gmt`(`comment_date_gmt`) BTREE を使用、
  インデックス `comment_parent`(`comment_parent`) BTREE 使用、
  インデックス `comment_author_email`(`comment_author_email`(10)) BTREE の使用
) ENGINE = InnoDB AUTO_INCREMENT = 35 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_520_ci ROW_FORMAT = Dynamic;

このエラーは主に、MySQL を 5.7 にアップグレードしたときのデフォルト値の非互換性によって発生します。フィールド名を確認してください。私のフィールドは時間フィールドで、そのタイプは datetime です。型のデフォルト値が制限されている可能性があるので、sql_mode を確認してください。案の定: NO_ZERO_IN_DATE、NO_ZERO_DATE、これら2つのパラメータは時間を制限し、0にはできません

sql_modeを確認する

mysql> 'sql_mode' のような変数を表示します。
+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 変数名 | 値 |
+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| sql_mode | ONLY_FULL_GROUP_BY、STRICT_TRANS_TABLES、NO_ZERO_IN_DATE、NO_ZERO_DATE、ERROR_FOR_DIVISION_BY_ZERO、NO_AUTO_CREATE_USER、NO_ENGINE_SUBSTITUTION |
+---------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
セット内の 1 行 (0.00 秒)

マイSQL>

一時的な変更:

mysql> セッションの設定
 -> sql_mode = 'ONLY_FULL_GROUP_BY、STRICT_TRANS_TABLES、ERROR_FOR_DIVISION_BY_ZERO、NO_AUTO_CREATE_USER、NO_ENGINE_SUBSTITUTION';
クエリは正常、影響を受けた行は 0 行、警告は 1 件 (0.00 秒)

マイSQL>

永久的な変更:

my.cnfファイルを直接変更することができます

例えば: vim /etc/my.cnf

Windows環境でmysql.ini設定ファイルを変更して解決してください〜

[mysqld]の下に次の行を追加します。

sql_mode=ONLY_FULL_GROUP_BY、STRICT_TRANS_TABLES、ERROR_FOR_DIVISION_BY_ZERO、NO_AUTO_CREATE_USER、NO_ENGINE_SUBSTITUTION

さて、問題は解決しました。今度は、テーブルをインポートまたは作成するときに確認してみましょう。

上記は、MySQL を 5.7 にアップグレードしたときに発生する WordPress データ インポート エラー 1067 の問題を解決する詳細な内容です。MySQL データベース インポート エラー 1067 の詳細については、123WORDPRESS.COM の他の関連記事に注目してください。

以下もご興味があるかもしれません:
  • Navicat を使用して MySQL データベースをエクスポートおよびインポートする方法
  • MySQL コマンドラインのエクスポートとデータベースインスタンスのインポートの詳細な説明
  • Wampserver で MySQL データベースをインポートする手順
  • MySQL コマンドラインによるデータベースのエクスポートとインポート
  • php.ini を変更して、Mysql インポート データベース ファイルの変更方法の最大制限を実装します。
  • Windows が MySQL サービスを開始できず、エラー 1067 を報告する場合の解決策
  • mysql サービスが起動できず、エラー 1067 が報告される解決策 (mysql 起動エラー 1067)

<<:  INS と DEL を使用してドキュメントの変更をマークする方法の詳細な説明

>>:  Linux での Nginx アンチホットリンクと最適化の実装コード

推薦する

入力ボックスのカーソルサイズの表示が一貫していない問題の解決方法

入力ボックス内のカーソルのサイズが一定ではありませんIE7とChromeの違いは非常に明白ですまず、...

Vue Elementのテーブルコンポーネントをカプセル化する方法

Vue コンポーネントをカプセル化する場合でも、機能コンポーネントをクロスファンクショナルに使用しま...

JavaScript スタイル オブジェクトと CurrentStyle オブジェクトのケース スタディ

1. スタイルオブジェクトスタイル オブジェクトは単一のスタイル宣言を表し、スタイルが適用されている...

Nginx のステータス監視とログ分析の詳細な説明

1. Nginx ステータス監視Nginx には、Nginx の全体的なアクセス ステータスを監視す...

VMware Workstation 15 Pro インストール ガイド (初心者向け)

01. VMware Workstation Pro 15 のダウンロードダウンロード: VMwa...

React.FCとReact.Componentの使用に関する簡単な説明

目次1. React.FC<> 2. クラスxxはReact.Componentを拡張し...

Vue でデータが変更された後にビューを同期的に更新する方法

序文少し前に、興味深い問題を目にしました。Vue のデータが変更された後に、ビューを同期的に更新する...

MySQL で lower_case_table_names を記録する際の落とし穴の詳細な説明

1 原因プロジェクトがデータベースを移行して再起動した後、「T_AAAテーブルが存在しません」という...

Nginx で CDN サーバーを構築する方法の詳細な説明 (画像とテキスト)

Nginxのproxy_cacheを使用してキャッシュサーバーを構築する1: ngx_cache_...

MySQL 5.7.17 無料インストールバージョンの設定方法グラフィックチュートリアル (Windows10)

1. 概要ネットでいろいろ検索してみたところ、Linux システム向けではなく、現在の新しいバージ...

HTMLの表のtbodyは上下左右にスライドできます

テーブル ヘッダーが固定されている場合は、それを 2 つのテーブルに分割する必要があります。1 つの...

製品の拡大鏡効果を実現する JavaScript

この記事では、参考までに、製品拡大鏡を実装するためのJavaScriptの具体的なコードを紹介します...

404エラーページを作成する際に注意すべき問題の簡単な分析

ウェブサイトを最適化するときは、エラー ページの使い方を学ぶ必要があります。たとえば、ウェブサイトに...

Vue3デスクトップアプリケーションの構築方法

この記事では、Vite を使用して Vue 3 デスクトップ プロジェクトを開発する方法について説明...

Win10 VM 仮想マシンに Mac OS10.14 を完璧にインストールする (グラフィック チュートリアル)

最近、Apple の記者会見を見てとても興奮したので、Mac システムを体験して Apple の素晴...