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 アンチホットリンクと最適化の実装コード

推薦する

美しいHTMLコードの書き方

美しい HTML コードの外観 美しい HTML コードの書き方。外国人が書いた記事: 美しい HT...

コードを通じてHTMLエスケープ文字を識別する方法について説明します

データ内に次のような特徴を持つ「 ' 」などの文字が含まれることがあります。 &# ...

Tomcat Nginx Redis セッション共有プロセス図

1. 準備ミドルウェア: Tomcat、Redis、Nginx Jar パッケージ: commons...

Linux のような環境で jdk1.8 をインストールし、環境変数を設定する方法の詳細な説明

設定は非常にシンプルですが、毎回確認しないといけないので、記録だけ残しておきます。 1. インストー...

MYSQL での Truncate の使用法の詳細な説明

この記事のガイド: テーブル内のデータを削除するには、削除と切り捨ての 2 つの方法があります。TR...

Docker Swarm 外部検証ロードバランシングが機能しない場合の解決策

問題の説明Centos7 をローカルにインストールして 3 つの仮想マシンを作成し、Swarm クラ...

MySQL での find_in_set() 関数の使用に関する詳細な説明

まず、例を見てみましょう。記事テーブルにはタイプフィールドがあり、1 見出し、2 おすすめ、3 ホッ...

vue.js ルーターのネストされたルートの実例

目次序文Vue CLI での設定基本コードVueルーターの登場ネストされたルートの設定要約する序文V...

複数のプロジェクトをデプロイする Docker nginx の例

前提条件1. ローカルコンピュータとサーバーにDockerがインストールされています。ダウンロード方...

React Diff Principle の詳細な分析

目次差分アルゴリズムレイヤーごとの比較同じタイプのコンポーネントを比較する同じタイプの要素の比較子ノ...

JS 日付コントロール My97DatePicker の基本的な使い方

My97DatePicker は非常に柔軟で使いやすい日付コントロールです。使い方はとても簡単です。...

ウェブサイトのパフォーマンス: 画像とCookieの最適化、モバイルアプリケーションの最適化

前のセクションでは、コンテンツ、サーバー、JavaScript、CSS など、Web サイトのパフォ...

Linux ディスク パーティションの実装の原理と方法の分析

覚えて: IDE ディスク: 最初のディスクは hda、2 番目のディスクは hdb...最初のディ...

CSS モジュールソリューション

CSS のモジュール ソリューションは、JS のモジュール ソリューションと同じくらい多く存在すると...

Linux カーネル デバイス ドライバー システム コールに関する注意事項

/**************************** * システムコール**********...