私が自分で実行したWordPressデータベース修復手順
John Turner
ジョン・ターナー
ウェブサイトを見たら、たくさんのエラーや完全に壊れたページが表示された経験はありませんか?
ある瞬間はすべて順調なのに、次の瞬間には、まるであなたのサイトが意思を持っているかのように見えます。
通常、このようなことが起こる場合、WordPressデータベースに問題があります。データベースは、すべての重要なコンテンツ、設定、データを保存するため、ウェブサイトの非常に重要な部分です。
WordPressデータベースの破損は、見た目ほど恐ろしいものではありません。長年WordPressサイトを管理してきた経験から、パンクしたタイヤを修理するような、単なる修正可能な問題として捉えるようになりました。確かに不便ですが、やり方がわかれば、再び物事を進めることができます。
このガイドを書いているのは、初めてデータベースの危機に瀕したときに、このようなものが欲しかったからです。
数分でオンラインに戻れる可能性のある簡単な解決策から、より難しい状況に対応するためのより徹底的な解決策まで、WordPressデータベースの修復について学んだすべてを説明します。
あなたのサイトを軌道に戻しましょう。
目次
WordPressデータベースを修復する必要があるとき
データベースの問題が突然現れることはめったにありません。完全に機能しなくなる前に、通常は警告サインが出ます。
最も明白な警告サインは、「データベース接続を確立できません」というメッセージです。「ここに問題があります!」と叫んでいるような、ウェブサイトからの大きな赤い旗の合図のようなものです。

しかし、長年私が注意するようになった、より微妙な兆候もあります。
注意すべき点は次のとおりです。
サイトのコンテンツが表示されたり消えたりし始めます。ある瞬間は表示されていても、次の瞬間には消え、後で再び表示されるようになります。これは、データベースに注意が必要であるという明白な兆候です。
WordPressダッシュボードの動作が非常に遅くなります。ボタンをクリックしても、永遠に読み込みスピナーが表示されているように見える場合、データベースが追いつくのに苦労している可能性があります。
投稿を「保存」しても何も起こりません。あるいはもっと悪いことに、1時間かけて完璧なページを作成し、「公開」をクリックしても、すべてが消えてしまいます。データベースが新しい情報を書き込むのに問題がある可能性があります。
ランダムなエラーメッセージが表示され、特に「データベース接続」、「SQLエラー」、あるいはホワイトスクリーンオブデスに言及しているものがあります。これらは、サイトからの救難信号のようなものです。
問題は、これらの問題が自然に解決することはめったにないということです。実際、時間とともに悪化することがほとんどです。
WordPressデータベースが注意を必要としている一般的な兆候を理解することは、最適なサイトパフォーマンスを維持するために不可欠です。
しかし、良いニュースは、これらの問題を早期に発見すれば、はるかに簡単に修正できるということです。そして、私を信じてください、早期に修正したいはずです。
データベースの破損か、単なる肥大化か?
修復を実行する前に、実際にどのような問題があるのかを知っておくと役立ちます。破損したデータベースと肥大化したデータベースは似たような症状を引き起こしますが、それぞれ異なる修正が必要です。
データベースが破損している兆候:
- フロントエンドまたは管理画面に「データベース接続確立エラー」が表示される
- 他のエラーメッセージなしのホワイトスクリーンの死
- 投稿またはページが公開後に消える
- WordPressダッシュボードにSQLエラーメッセージが表示される
- サイトが断続的にロードされ、その後失敗する
データベースが肥大化している兆候:
- 管理ダッシュボードが目立って遅く、エラーメッセージが表示されない
- バックアップファイルのサイズが本来あるべきサイズよりもはるかに大きい
- 通常のトラフィック負荷でクエリがタイムアウトする
- 明確な原因なく、数ヶ月かけてパフォーマンスが徐々に低下した
サイトによっては、両方の問題が同時に発生している場合があります。データベースは構造的に損傷し、長年にわたって蓄積されたリビジョンや期限切れのキャッシュデータで散らかっている可能性があります。
データベースの破損の原因とは?
データベースの問題を解決するお手伝いをしているときに、最もよく聞かれる質問は「何が悪かったのでしょうか?」です。
通常、それはあなたが全く何もしていないことではありません。私の経験では、データベースの破損は風邪をひくようなものです。時には、すべてを正しく行っていても、単に発生します。
サイトを修理してきた長年の経験から、私が遭遇した最も一般的なWordPressデータベースエラーは次のとおりです。
ホスティングプロバイダーのサーバーが調子が悪かった。停電があったのかもしれませんし、トラフィックの急増中にリソースが不足したのかもしれません。データベース操作中にサーバーが一時停止すると、問題が発生する可能性があります。
インストールしたばかりのプラグインアップデートですか?時には、プラグイン同士やWordPressコアと互換性がない場合があります。これらのプラグインの競合がデータベースの問題を引き起こす可能性があります。
投稿を編集しているときにインターネット接続が切断されたことを覚えていますか?WordPressがデータベースにデータを保存している間に接続が切断されると、データが不整合になる可能性があります。
そして時々、それは単なる摩耗です。データベースは他のツールと同じように、時間とともに散らかり、断片化することがあります。サイトがデータベーステーブルが整理されていないというだけで、動作が非常に遅くなるのを見たことがあります。
データベースが破損する可能性のあるその他の理由は次のとおりです。
- サイトがハッキングされた場合、マルウェア、ウイルス、その他の悪質なコードによる深刻な損害が発生する可能性があります。
- WordPressデータベースの認証情報の問題により、適切なアクセスができない
- メモリ制限を超過した
- ハードウェア障害およびその他のサーバーの問題
- ソフトウェアのバグまたはWordPressプラグインの競合
WordPressデータベースを修復する前に
あなたのウェブサイトと正気を救うかもしれないことを共有しようとしています。
データベース修復の私の黄金律は次のとおりです。修正を開始する前に、必ずバックアップを作成してください。
あなたのサイトが燃えていても気にしません。まずバックアップを保存してください。ビデオゲームのセーブポイントのようなものです。物事がうまくいかなくなった場合、いつでも開始地点に戻ることができます。
今バックアップを作成することで、後で何時間(または何日)もの頭痛の種を救うことができます。バックアップする必要があるのは次のとおりです。
- データベース(当然のことながら)-破損している場合でも。部分的に破損したデータベースは、データベースがないよりはましです。
- すべてのWordPressファイル-テーマ、プラグイン、アップロードなど、すべて。データベースの問題を解決するにはWordPressの再インストールが必要になる場合があります。ファイルは安全に保管しておきたいでしょう。
ここでDuplicatorのようなツールがあなたの親友になります。私は修復作業に入る前にサイトの完全なバックアップを作成するために何度もそれを使用しました。問題の解決に取り組んでいる間、安全ネットを提供してくれます。

開始する前に、新しいバックアップを作成してください。完全なバックアップには、サイト全体プリセットを選択してください。

追加のセキュリティのために、バックアップをクラウドストレージの場所に保存してください。Duplicatorはこれらのすべてのオプションをサポートしています。
- Duplicator Cloud
- Google Drive
- Dropbox
- Microsoft OneDrive
- Amazon S3
- Wasabi
- Google Cloud
- DreamObjects
- Vultr
- DigitalOcean Spaces
- Cloudflare R2
- Backblaze B2
- その他のS3互換クラウドストレージ
さらに、1つが失敗した場合に備えて、複数の場所を選択できます。

これでトラブルシューティングの準備ができました!
WordPressデータベースの修復方法
WordPressデータベースを修復する必要がある場合、いくつかの簡単な方法があります。すべて見てみましょう!
クリーンなデータベースバックアップを復元する
最近の危機についてお話ししましょう。Black Bike Mediaは、クライアントの2.4GBの破損したデータベースを解決する必要がありました。サーバーの障害により、この求人サイトのデータベーステーブルの貴重な情報が失われました。
Duplicator Proがバックアップ用に設定されていたため、Black Bikeは数分でサイトを復旧させることができました。徹夜する必要はありませんでした。
なぜバックアップの復元がしばしば最初に行うべき最善の策なのか、その理由は次のとおりです。
- 予測可能であること。バックアップが作成された時点でのサイトの状態を正確に把握できます。
- 包括的であること。問題をパッチするだけでなく、既知の良好な状態に復元します。
- 高速であること。破損の問題を一つずつ診断して修正しようとするよりもはるかに高速です。
さて、Duplicator Pro(強くお勧めします)を使用している場合、復元プロセスは驚くほど簡単です。
WordPressダッシュボードにログインします(できない場合は、バックアップをサーバーに直接アップロードできます)。
Duplicator Pro » Backupsに移動します。問題が発生する前の最新のバックアップを見つけます。Restoreボタンをクリックします。

しかし、バックアップがない場合はどうでしょうか?まず、深呼吸してください。私も経験がありますが、理想的ではありませんが、ゲームオーバーではありません。他にいくつかの方法があります。
データベースの認証情報を確認する
データベースは、wp-config.phpファイルに認証情報を保存します。これらが正しくないと、接続エラーが発生します。
WordPressデータベースの修復が必要な場合は、まずwp-config.phpファイルでデータベースの認証情報を確認してください。更新が必要なだけかもしれません。
cPanelまたはFTPクライアントを使用してwp-config.phpファイルを開きます。次の情報を探してください。
- DB_NAME(データベース名)
- DB_USER(データベースのユーザー名)
- DB_PASSWORD(データベースのパスワード)
- DB_HOST(データベースサーバーのホスト名)
ウェブホスティングプロバイダーは、これらの値が何であるべきかを知っています。サポートに連絡するか、データベース設定でこの情報を見つけることができます。

エラーログを有効にする
エラーログは情報の宝庫になり得ます。データベースの破損の原因の手がかりを提供します。
WordPressでエラーログを有効にするには、wp-config.phpファイルにコードを追加する必要があります。これを行うにはFTPまたはファイルマネージャーが必要であることを忘れないでください。
これらのコード行をwp-config.phpファイルに追加します。
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
define( 'WP_DEBUG', true ); デバッグモードを有効にします。
define( 'WP_DEBUG_LOG', true ); WordPressにエラーをファイルに記録するように指示します。
define( 'WP_DEBUG_DISPLAY', false ); は、ウェブサイトのフロントエンドでのエラー表示を非表示にします。
これらの行を追加すると、debug.log ファイルが作成されます。これは wp-content フォルダ内にあります。
データベースに変更を加えた後は、このファイルを確認してください。エラーや警告が表示されます。
phpMyAdminを使用してWordPressデータベーステーブルを修復する
私が初めて phpMyAdmin を使った時のことを今でも覚えています。データベーステーブルの行は、まるで『マトリックス』の世界のようでした。
しかし、一度見方がわかれば、実際には非常にわかりやすいものです。データベースのコントロールルームだと思ってください。
phpMyAdmin を使ってデータベースを修復するためのステップバイステップガイドをご紹介します(心配しないでください、シンプルに保ちます)。
ホスティングコントロールパネル(通常は cPanel)にログインします。phpMyAdmin を見つけてクリックします。

左側のサイドバーから WordPress データベースを選択します。すべてのテーブルにチェックを入れます。ドロップダウンメニューから Repair table を選択します。

PhpMyAdmin は、破損したデータベーステーブルの修正を試みます。
データベース修復プラグインを使用する
時には最もシンプルな解決策が最善であることもあります。データベーステーブルの修正と最適化を支援するいくつかのデータベース修復プラグインが利用可能です。特に phpMyAdmin に慣れていないクライアントを支援する際に、これらのプラグインで大きな成功を収めてきました。
私のゴールデンルールを忘れないでください:まずバックアップ!使いやすいプラグインインターフェースであっても、データベースに手術を行っているのです。
データベース修復のために私が気に入っているプラグインの1つはDB Optimizerです。データベースの健全性スコアを提供し、テーブルの最適化または修復を可能にします。

インストールしたら、DB Optimizer » Tablesを見つけます。修正が必要なテーブルの横にあるRepairボタンを使用します。

DB Optimizerは、既存のデータベースの問題を修正しようとします。
WordPressデータベース修復ツールを使用する
WordPress の組み込みデータベース修復ツールは、一般的なデータベースの問題に対処するのに非常に役立ちます。デフォルトでは非表示になっているだけです。
サイトの組み込み応急処置キットだと思ってください。完全なバックアップ復元ほど包括的ではありませんが、多くの軽微なデータベース破損を修正するのを見てきました。
まず、有効にする必要があります。wp-config.php ファイルを開き、一番下に行を追加します:
define('WP_ALLOW_REPAIR', true);
次に、サイトでこの URL にアクセスします:
your-site.com/wp-admin/maint/repair.php
Repair Database と Repair and Optimize Database の2つのオプションが表示されます。

まず Repair Database を試してください。それでも解決しない場合は、Repair and Optimize を試してください。こちらはより徹底的ですが、時間がかかります。
苦労して学んだことから、注意点があります。完了したら、wp-config.phpからその行を削除してください。そうしないと、誰でもあなたの修復ページにアクセスできるようになり、それは望ましいことではありません。
cPanelを使用してデータベースを修復する
ホスティングプロバイダーにcPanelがある場合、データベース修復機能が組み込まれています。ホストがサポートしていれば、データベースを修復する便利な方法です。
これらのツールにアクセスするための正確な手順は、特定のホスティングプロバイダーによって異なります。Bluehostの場合は、cPanelを開き、MySQL Databasesを見つけてください。

次に、Modify Databasesセクションに移動します。修復したいデータベースを選択します。そして、Repair Databaseボタンを押します。

これは、一部の人にとっては迅速かつ簡単なオプションになる可能性があります。ホストがこれを提供しているかどうかを確認する価値はあります。
WP-CLIを使用してデータベースを修復する
コマンドラインインターフェースに慣れている場合は、WP-CLIがWordPressの優れたツールです。コマンドラインから多くのWordPressタスクを実行できます。
データベース修復のための基本的なWP-CLIコマンドは次のとおりです。
wp db repair
WP-CLIは各テーブルを処理し、結果をターミナルに出力します。出力には、各テーブルとその修復ステータスがリストされます。
出力のすべてのテーブルが「repaired」または「OK」と表示されている場合、これが機能したことがわかります。「error」と表示されているエントリは個別の注意が必要です。
WP-CLIの好きなところは、その効率性です。メニューを何度もクリックする必要はなく、直接目的を達成できます。さらに、修正している内容について詳細なフィードバックを提供してくれます。
データベースを修復した後にすべきこと
テーブルの修復は構造的な損傷を修正します。しかし、修復されたデータベースでも、遅く、大きすぎ、バックアップサイズを増大させる可能性があります。
修復後にダッシュボードが遅い場合、またはバックアップが本来あるべきサイズよりも大きい場合は、データベースの最適化が必要です。ここでDB Optimizerが登場します。
DB Optimizer は Duplicator のデータベースメンテナンスツールです。データベースの健全性を 0 から 100 で評価し、何が原因で遅くなっているかを正確に表示し、SQL を記述したり phpMyAdmin を調べたりすることなくクリーンアップします。

メイン画面には、色分けされた評価付きの健全性スコアが表示されます。緑 (80-100) はデータベースが良好な状態であることを意味し、黄色 (50-79) は注意が必要であることを意味し、赤 (50 未満) は大幅なクリーンアップが遅れていることを意味します。

スコアは 5 つのカテゴリ (テーブルオーバーヘッド、期限切れの一時データ、投稿リビジョン、オートロードデータのサイズ、ゴミ箱) を評価し、それぞれを個別にフラグ付けするため、問題がどこにあるかを正確に把握できます。
フラグが付けられたカテゴリを確認したら、DB Optimizer は削除を実行する前に、それぞれの項目数と回収可能なディスク容量を表示します。数値をレビューしてから、フラグが付けられた各カテゴリでクリーンアップを実行してください。

速度以上のメリット。データベースが小さいほど、バックアップの作成が速くなり、移行中の転送も速くなります。
よくある質問(FAQ)
WordPressのデータベースをどのように修正しますか?
ホスティングコントロールパネルにアクセスし、phpMyAdminで修復ツールを実行することで、WordPressデータベースを修正できます。または、wp-config.phpファイルにdefine('WP_ALLOW_REPAIR', true);を追加してから、yourwebsite.com/wp-admin/maint/repair.phpにアクセスしてデータベースを修復および最適化します。
WordPressデータベースをどのようにクリーンアップしますか?
未使用のプラグイン、テーマ、リビジョンを削除して、WordPressデータベースをクリーンアップします。WP-Optimizeのようなプラグインを使用して、スパムコメント、一時オプション、孤立したメタデータを削除します。データ損失を防ぐために、クリーンアップの前に定期的にデータベースをバックアップしてください。
定期的なデータベースの最適化は、多くの一般的な問題を深刻な問題になる前に防ぐことができます!
WordPressデータベースを復元できますか?
ホスティングコントロールパネルにアクセスし、phpMyAdminに移動して、「インポート」機能を使用してバックアップファイルをアップロードすることで、WordPressデータベースを復元します。または、Duplicatorのようなバックアッププラグインを使用して、保存されたバックアップから直接データベースを復元します。

バックアップなしでWordPressデータベースを復元するにはどうすればよいですか?
サーバーレベルのスナップショットまたはリカバリオプションがないか、ホスティングプロバイダーに問い合わせて、バックアップなしでWordPressデータベースを復元します。利用できない場合は、phpMyAdminのデータベース修復ツールを使用して部分的なデータを回復するか、サイトのキャッシュされたコンテンツを使用してデータベースを再構築しようとします。
WordPress のデータベースが破損する原因は何ですか?
ほとんどの破損は、中断された書き込み操作中に発生します。WordPress がデータを保存中にサーバーがクラッシュしたり、停電が発生したりすると、テーブルが部分的に書き込まれた状態になります。不正な SQL クエリを実行するプラグインの競合も、時間の経過とともに行を破損させる可能性があります。
その他の原因としては、ホストのストレージレイヤーでのハードウェア障害、悪意のあるデータベースの変更を導入するセキュリティ侵害、移行中のファイル転送の中断などがあります。通常の日常的な WordPress の使用で破損が発生することはめったにありません。
データベースの修復でコンテンツが削除されることはありますか?
修復ではコンテンツは削除されません。既存のデータベーステーブルの構造的整合性を、内部のデータに触れることなく修正します。最適化は、リビジョン、期限切れの一時データ、スパム、断片化されたオーバーヘッドスペースなど、データが削除される場所です。DB Optimizer は、削除を実行する前に項目数と回収可能なスペースを表示するため、確認する前に何が削除されるかを正確にレビューできます。承認なしに何も実行されません。
WordPress データベースの修復と最適化の違いは何ですか?
修復は、構造的に破損した、またはクラッシュしたデータベーステーブルを修正します。データベース接続エラー、破損した行、WordPress がデータの読み書きを妨げるテーブルレベルの損傷に対処します。最適化は、構造的には健全だが肥大化したテーブルから蓄積されたゴミ (投稿リビジョン、期限切れの一時データ、スパムコメント、断片化されたオーバーヘッドスペース) を削除します。
修復されたデータベースでも、最適化されていない場合は遅く、サイズが大きくなる可能性があります。どちらのタスクも定期的なメンテナンスルーチンに含めるべきです。
データベースは修正されました。その状態を維持する方法はこちらです
上記のステップを完了した場合、壊れたデータベースを修正した以上のことを行ったことになります。構造的な損傷を修復し、問題が破損なのか肥大化なのかを特定し、最適化を実行して健全性スコアを緑色にしました。元のエラーを引き起こしたデータベースは、問題が発生する前よりもクリーンで小さくなりました。
今後、DB Optimizerを開いてヘルススコアを確認するために毎月リマインダーを設定してください。月に1回、5分間です。
80未満はすべてクリーンアップの実行に値します。毎月のチェックで緑色を維持するスコアは、実際のダメージを引き起こすレベルまで蓄積する前に不要なものを削除しているため、この問題が再び発生する可能性はほぼありません。
150万人以上のWordPressのプロフェッショナルがDuplicatorを使用しており、自動バックアップ、クラウドストレージ接続、ワンクリック復元でサイトを保護しています。何か問題が発生した場合、ディザスタリカバリURLを使用すると、WordPressが機能していなくてもサイトを復旧できます。
DB OptimizerはDuplicator ProおよびEliteプランに含まれているため、バックアップと継続的なデータベースのヘルスモニタリングは同じダッシュボードにあります。
せっかくなので、これらの他のWordPressガイドも気に入ると思います。