【WordPress】正しい情報を設定したデータベース接続エラーの解決方法

これまでずっと運営していたサイトが、ある日突然「データベース接続エラー」と表示されてしまいました。
この時コアファイル・プラグイン・テーマの更新問題でもなく、wp-adminにアクセスへすると「One or more database tables are unavailable. The database may need to be repair」といったエラー文が表示されました。
DBに異常があるようですが、これを直すためにはWordPerssコアに備わるリペアツールを起動する必要があります。

ちなみにですが、この時の原因は恐らくサーバー負荷で、ログイン試行が異常なほど多かったです。

<WordPressが入るドメイン>/wp-admin/maint/repair.php

ここにリペアツールがあります。
とはいえこのままアクセスしてもリペアツールは起動できません。リペアツールを許可する設定をwp-config.phpに追加する必要があります。

リペアツールを許可する前に、外部にアクセスされないよう制限を掛けておきましょう。

define('WP_ALLOW_REPAIR', true);

wp-config.phpに設定したあとリペアツールのページへアクセスすると修復画面が表示されます。
最適化と修復がありますので、ここから修復を行ないましょう。

チェックポイント

リペアツールからの修復中、エラーが出る可能性もある

エラーが出てももう一度修復を行なうと直るかもしれません。
落ち着いて作業しましょう。

リペアツールの起動を許可する時にはIP制限だけでも掛けておく

htaccessからのIP制限なら、以下の記述でいけるはずです。

RewriteEngine On
<IfModule mod_rewrite.c>
RewriteCond %{REMOTE_ADDR} !=<使用するIPアドレス>
RewriteRule ^wp-admin\/maint\/repair\.php$ http\:\/\/0\.0\.0\.0\/ [R=301,L,QSD]
</IfModule>
修復した後はリペアツールを使用できないようにする

修復後、リペアツールは不要です。
誤って外部からアクセスされる事がないよう、wp-config.phpに追加した設定は削除しておきましょう。

この記事を書いた人

ひがしのアバター ひがし フリーランス

制作会社で経験を得たあと、主にWEB制作の案件を請け負いながら活動する奈良県在住のフリーランス。
別の場所ではエストというHNで創作活動しながら、楽しく作ることを大事に技術習得やスキルアップをしています(・ω・*)

※「ひがし」はビジネス用のハンドルネームになります。本名はお客様や必要に応じてお伝えします。

目次