ワードプレスサイトで、「データベース接続確立エラー」Error Establishing a Database Connectionと突然、もしくはインストール後に表示されたときの簡単、すぐにできる対象法をご紹介いたします。

1 データベースが生きているか(稼働・起動しているか確かめる)

まず、そもそもの事データベースが落ちていないかどうかを確かめましょう。下記のプログラムをコピペして、データベースの接続url、データベースのユーザー名、データベースのパスワード を正しく”の間に入力します。

<?php
$host = "データベースの接続url";
$username = "データベースのユーザー名";
$password = "データベースのパスワード";
//編集が必要なのは上の3行です!
$link = mysqli_connect($host, $username, $password);
if (!$link) {
die('データベースが接続不良もしくは起動していません ' . mysqli_error());
}
echo 'データベースは起動しています!';
mysqli_close($link);
?>

dbchack.phpというテキストファイルとして保存し、FTPソフトウェアでサーバーにアップロードして、ブラウザで上記ファイルにアクセスし、「データベースは起動しています!」と表示されるか確かめましょう。

データベースが接続不良もしくは起動していません と表示された場合

この場合、データベースの接続url、データベースのユーザー名、データベースのパスワード が間違っているか、データベースがダウンしている可能性がございます。

※ Access denied for user ‘xxxxx’@’%’ (using password: YES)
と表示された場合は、ユーザー名もしくはパスワードが間違っています。データベース自体は起動しているということでございます。

サーバー会社のメンテナンスでデータベースが落ちていないか確認いただき、VPS等を利用されている場合は、ApacheやMysqlの再起動を行います。

※データベースの接続url、データベースのユーザー名、データベースのパスワード がわからない場合は?
お使いのサーバーの管理画面より、確認することが可能です。パスワード等がわからない場合は、ワードプレスがインストールされている、フォルダにある、データベースへの接続情報が記載されているファイルWP-Config.phpに接続情報が記載されています。

データベースは起動しています! と表示された場合

この場合、データベースは生きているのにワードプレスだけがデータベースに接続不良になっているということです。次の説明を参照ください。

2 データベースが生きているのにワードプレスサイトだけが「データベース接続確立エラー」となる場合の対処方法

2-1 WP-Config.phpファイルの設定をが正しいか確かめる

ワードプレスがインストールされている、フォルダにある、データベースへの接続情報が記載されているファイルWP-Config.phpの設定が不全を確認しましょう。WP-Config.phpをローカルにFTPソフトウェア等でダウンロードして内容を確認されてください。

先ほど、テストした データベースの接続url、データベースのユーザー名、データベースのパスワード をそれぞれ下記のように入力されているかご確認ください。
また、DB_NAME の項にワードプレスが接続するデータベースが正しく記載されているかご確認ください。

define('DB_NAME', 'ワードプレスが接続するデータベース名');
define('DB_USER', 'データベースのユーザー名');
define('DB_PASSWORD', 'データベースのパスワード');
define('DB_HOST', 'データベースの接続url');

※define(‘DB_HOST’, ‘localhost’);と記載されている場合は、define(‘DB_HOST’, ‘127.0.0.1’);と記載すると接続可能となる場合があります。

2-2 データベースの復旧を行う

もし、サイトの表示と、管理画面双方が表示されない場合、データベースの構造が壊れている可能性がございます。
この場合、ワードプレスのデータベースをバックアップの上、データベースの構造の復旧をワードプレスで行う方法があります。

※データベースのバックアップ方法は下記を参照されてください
シンプルで軽いphpMyadminの代替 データベース管理プログラム「Adminer」を使おう

WP-Config.phpの
/* 編集が必要なのはここまでです ! WordPress でのパブリッシングをお楽しみください。 */
と記載がある部分の下に下記のコードを一行挿入し、再度ワードプレスにアクセスしてください。

define('WP_ALLOW_REPAIR', true);

すると下のような画面が表示されますので、データベースを復旧を行ったうえで、上記の記載を削除の上、再度WP-Config.phpをアップロードしサイトにアクセスしてみます。

3 それでも復旧しないときの対処方法

1 お使いのサーバーでPHPがバージョン5.6以上であることを確認されてください。サーバーの設定でPHPを5.6以上にしてみましょう

2 データベースに接続し、 wp_optionsテーブルの’siteurl’のオプション項目が正しいURLになっているかご確認ください

3 お使いのサーバーでPHP.INIファイルにおけるPHPの設定不全がないかどうかをお確かめください。

extension=mysql.so
extension=mysqli.so

がコメントアウトされていませんか?

もしくは、

extension_dir = 

の部分が正しく指定されていますか?、この項目があるとエラーが出るサーバもございます。行頭に;をつけてコメントアウトして接続可能となるか確認します。

4 サーバーが容量不足になっていて、新しい情報を書き込めなくなってデータベース接続エラーになる事がございます。この場合、サーバーの容量をお確かめの上、容量オーバーの場合はバックアップファイルを消すなどして容量を開けます。

データベースの容量オーバーの場合は下記を参照されてみてください。
●ワードプレスドクター 依頼事例:データベースの肥大化による Allowed memory size of エラーのご解決
●ワードプレスのデータベースの肥大化の解消方法

5 バックアッププラグインや、アクセス解析プラグインがデータベースのリソースを食いつぶしている場合もございます。この場合、wp-content/pluginsフォルダに含まれている該当のプラグインフォルダを削除されると、このプラグインがデータベースへアクセスすることがなくなりますのでしばらくたつとデータベースのリソース不足が解消されアクセス可能となる場合がございます。

WordPress のエラーの修正、表示不全の修正はWPプレスドクターが代行することも可能です。お気軽にご相談ください。