バックアップのインストールまたはリストア中に、インストーラレポートにデータベースに関連するエラーや警告が含まれることがあります。これらのエラーは通常 [hash]-dump.sql
新しいデータベースへの挿入に失敗したダンプ・ファイル。
この記事では、インストール中に発生する可能性のあるデータベース(SQL)エラーについて説明し、その解決方法についてステップバイステップのガイドを提供します。
書き込みエラー
インストール中にエラーが発生したクエリは、インストーラのログファイルに記録されます。これらのエラーを確認するには、ログファイルを開き、"DATABASE RESULTS "というタイトルのセクションを検索します。エラーは "**ERROR**"でマークされます。最も一般的な原因は以下の通りです:
- データベースのバージョン:MySQL のバージョンがサーバー間で大きく異なる場合、互換性が損なわれることがあります。問題を最小限に抑えるには、デスティネーション・サーバーのMySQLバージョンがビルド・サーバーのバージョンと同等かそれ以上であることを確認してください。
- MySQL モード: MySQLモードは、MySQLエンジンがクエリを処理する方法に影響を与えます。インストーラはNO_ENGINE_SUBSTITUTIONとその他のモードの適用をサポートしています。多くのデータベース・エラーが発生する場合は、最初にNO_ENGINE_SUBSTITUTIONを設定することをお勧めします。そのためには
- デフォルトでは、Duplicatorは高度なオプションを表示しないシンプルなインストールモードを使用している可能性があります。
- インストーラーのステップ1で、すべての追加設定にアクセスするためにアドバンスモードになっていることを確認してください。

- インストールを続ける。
- インストールが完了したら、インストーラのログ(右上隅にあるリンク)にエラーがないか確認してください。
様々な組み合わせを試して、あなたのサーバーに最適なものを見つけてください。一度動作する設定を見つけたら、ホストまたはサーバー管理者と協力して、これらの値をmy.iniファイルに恒久的に設定してください。
クエリーサイズ制限エラー
クエリサイズ制限」に関連するエラーが発生した場合は、データペイロードが MySQL 設定で許可されている値を超えていることを意味します。手動で値を投稿するか、MySQL サーバの max_allowed_packet 設定を更新して大きなペイロードを処理する必要があります。ホストされたサーバを使用している場合は、サーバ管理者に連絡してください。詳細はMySQL packet sizedocumentation を参照してください。
この問題を解決するには、my.cnf(またはmy.ini)設定ファイルを編集し、max_allowed_package_size=2Mの設定を追加または更新する。この設定がすでに存在する場合は、現在の値の2倍にしてください。これらの変更を行った後、必ず MySQL サーバを再起動してください。
インストーラー・レポートの概要
最終ステップのインストーラレポートは、インストールに関する潜在的な問題を強調するように設計されています。場合によっては、サイト全体の機能には影響しないエラーや通知が表示されることがあります。サイトが安定しており、Deploy/Update の結果数が少ない(10 未満)場合は、通常、このような些細なエラーや通知は無視できます。
- 更新エラー:これらは、新しいサーバでの実行中に問題が発生した基本的なクエリ文です。データ整合性の問題や MySQL の異なるバージョン間の非互換性が原因である可能性があります。ここにエラーが表示された場合は、クエリを検査し、移行の問題をデバッグしてください。
- テーブル・キーの通知:これらの通知は、テーブルの新しいURL値が検出されたが、対応するテーブル・キーがないため更新できない場合に発生します。このような値は手動で探し、更新する必要があります。
- 連載のお知らせ: PHP 連載 の問題が発生することがあります。Duplicator はこれらのシリアライズ文字列の修復を試みますが、まれに正しく更新されない場合があります。
シリアライズ・エラーはさまざまな理由で起こりうる。シリアライズされた文字列を手動で修正するには- インストーラ・レポートで提供されたクエリを使用して、問題のあるシリアライズ文字列を見つけます。
- http://unserialize.onlinephpfunctions.com/。
- ページには、次のようなシリアライズ文字列のサンプルが表示されます。
a:1:{s:4:"Test";s:17:"unserialize here!";}
.セグメントs:4:"Test";
- これは4文字の文字列を表す。Test "を "Tes "に変更して実行すると、エラーが発生する。このエラーは、数値の文字カウントが実際の文字列の長さとずれているために発生する。 - 文字列の文字数を実際の長さに合うように調整し、問題を解決する。この方法は、文字列が別のエンコーディングによって壊れていない場合に有効です。もしそうであれば、さらなるエンコーディングの評価が必要かもしれません。
クイックチェック
インストーラレポートにエラーが表示された場合は、以下の手順に従ってください:
- サイトが正常に機能しているか確認してください。サイトが安定しており、エラー数が少ない場合は、特定のテーマ、プラグイン、またはウィジェットの設定を保存し直す必要があるだけかもしれません。
- それでも心配な場合は、インストーラレポートで提供されているSQLクエリを実行し、エラーログを確認して問題のあるクエリを評価します。phpMyAdminを使用してこのチェックを行うこともできます。
データベースの書き込みに関する問題を解決するには?
データベース接続に関する問題を解決するには?
Duplicatorにおすすめのホスティングプロバイダーは?