インストーラーのデータベースエラーと警告をインストールレポートで解決する
バックアップの復元後にインストーラーレポートでデータベースのエラーや警告が表示されますか?ほとんどは、いくつかのよく知られた原因に起因しており、それぞれに以下の特定の修正方法があります。
このガイドでは、照合順序の不一致から大きすぎるクエリまで、Duplicator Proインストーラーレポートでのデータベースエラーと警告の解決について説明します。
書き込みエラー
インストール中に、データベースに関連するエラーや警告は、通常、新しいデータベースへの挿入に失敗した[hash]-dump.sqlファイルからのデータに関連しています。インストール中にエラーが発生したクエリは、インストーラーログに記録されます。installer-log.txtを開き、DATABASE RESULTSセクションを検索すると、エラーはERRORとマークされています。Duplicator Proは、インストール中に表示されるエラー通知から直接installer-log.txtにリンクしているため、手動でサーバーをブラウズして見つける必要はありません。
最も一般的な原因は次のとおりです。
- データベースのバージョン:MySQLのバージョンがサーバー間で大きく異なる場合、互換性の問題が発生する可能性があります。さらにトラブルシューティングを行う前に、宛先サーバーのMySQLまたはMariaDBのバージョンがソースサーバーのバージョンと同じかそれ以降であることを確認してください。
- MySQLモード:MySQLモードは、MySQLエンジンがクエリを処理する方法に影響を与える可能性があります。
MySQLモードをNO_ENGINE_SUBSTITUTIONに設定する
installer-log.txtに「データベースエラー書き込み「無効なデフォルト値…」」と表示される場合は、MySQLモードをNO_ENGINE_SUBSTITUTIONに設定してください。多くのデータベースエラーが発生する場合は、最初にこれを設定することをお勧めします。
- インストーラーのステップ1で、詳細モードに切り替えます。
- データベースタブを開き、モードフィールドを見つけます。
- インストールの続行。
- インストールが完了したら、インストーラーログ(右上隅にあるリンク)でエラーを確認してください。
さまざまな組み合わせを試して、サーバーに最適なものを見つけてください。最適な構成を特定したら、ホストまたはサーバー管理者に連絡して、これらの値をmy.iniファイルに永続的に設定してもらってください。
一般的なエラー文字列と修正方法
| エラー | 原因 | 修正 |
|---|---|---|
| 不明な照合順序 | 宛先のMySQL/MariaDBバージョンがソースの照合順序をサポートしていません | 互換性モードと「不明な照合順序」エラーとは?を参照してください。 |
| MySQLサーバーが切断されました/パケットが大きすぎます | クエリがmax_allowed_packetを超えています | my.cnfまたはmy.iniでmax_allowed_packetを増やします(以下のクエリサイズ制限エラーを参照してください) |
| 列に対してデータが長すぎます | ソースと宛先の文字セットの不一致 | ソースの文字セット(通常はutf8mb4)と宛先データベースの文字セットを比較します |
| テーブル「X」は既に存在します | 以前のインストール試行から残ったテーブル | 宛先データベースのすべてのテーブルを削除するか、[すべてのテーブルを削除]を有効にしてから再実行してください |
| PRIMARY KEY の重複エントリ | 以前の部分的なインポートからの AUTO_INCREMENT の競合 | すべてのテーブルを削除し、クリーンなデータベースから再インストールを実行してください |
| ユーザーに対するアクセス拒否 | データベースの認証情報が正しくありません | ステップ 2 で正しいデータベースの認証情報を再入力してください |
| テーブル X でシリアライズされたデータエラー | PHP でシリアライズされた文字列を解析できませんでした | 以下のシリアライズに関する通知を参照してください |
クエリサイズ制限エラー
「クエリサイズ制限」に関連するエラーが発生した場合、それはデータペイロードが MySQL の設定で許可されている上限を超えていることを意味します。これを解決するには、my.cnf(または my.ini)設定ファイルを編集し、max_allowed_packet 設定を追加または更新してください。例:max_allowed_packet=64M。詳細については、MySQL パケットサイズを参照してください。
インストーラーレポートの概要
最終ステップのインストーラーレポートは、インストールの潜在的な問題を強調するように設計されています。場合によっては、サイトの全体的な機能に影響を与えないエラーや通知を受け取る可能性があることに注意してください。サイトが安定しており、デプロイ/更新の結果カウントが少ない(10未満)場合は、通常、これらの軽微なエラーや通知は無視できます。
更新エラー
これらは、新しいサーバーでの実行中に問題が発生した基本的なクエリステートメントです。データの整合性の問題や、異なる MySQL バージョン間の互換性によって引き起こされる可能性があります。ここにエラーが表示される場合は、クエリを調べて移行の問題をデバッグしてください。
テーブルキー通知
テーブルの新しい URL 値が検出されたものの、対応するテーブルキーがないため更新できない場合に、これらの通知が発生します。これらの値を手動で見つけて更新してください。
シリアライゼーション通知
PHP のシリアライズの問題は、内部値が変更されたときに発生する可能性があります。Duplicator Pro はシリアライズされた文字列を自動的に修復しようとしますが、まれに正しく更新されない場合があります。シリアライズされた文字列を手動で修正するには:
- インストーラーレポートで提供されているクエリを使用して、問題のあるシリアライズされた文字列を見つけます。
- unserialize.onlinephp.io にアクセスしてください。
- シリアライズされた文字列を貼り付けます。例:
a:1:{s:4:"Test";s:17:"unserialize here!";}。s:4:"Test";セグメントは、4 文字の文字列を示します。文字数が実際の文字列の長さと一致しない場合、アンシリアライズはエラーを発生させます。 - 問題を解決するために、文字数を実際の文字列の長さに一致するように調整してください。
クイックチェック
インストーラーレポートでエラーが発生した場合は、次の手順に従ってください。
- サイトが正しく機能することを確認してください。安定しており、エラー数が少ない場合は、影響を受けるテーマ、プラグイン、またはウィジェットの設定を再保存してください。
- それでも懸念がある場合は、インストーラーレポートで提供されているSQLクエリを実行し、エラーログを確認して問題のあるクエリを評価します。これにはphpMyAdminを使用してチェックを実行することもできます。
これで完了です!このガイドの手順に従うことで、Duplicator Pro のインストールレポートで最も一般的なデータベースのエラーや警告が解決され、移行または復元がクリーンに完了します。
こちらも参照してください:
データベース書き込みの問題を修正する方法は?
データベース接続の問題を修正する方法は?
Duplicatorの推奨ホスティングプロバイダーは?
