データベース接続確立エラー の対処法

WordPress データベースエラー WP 設定
WordPress データベースエラー

データベース接続確立エラー

Sponsor

データベース接続確立エラー

データベース接続確立エラー、「Error establishing a database connection」が表示された時の対処法と復元を記載しておきます。

プラグインでデータベース保存中のエラー

  • Error establishing a database connection
  • 画面は真っ白
  • WordPressの管理画面は表示されない

WordPressの管理画面は表示されません。しかし、真っ白い管理画面( http://example.com/wp-admin/ )には解決方法が記載されています。

Sponsor

管理画面 / データベース接続確立エラーの表示

  • 管理画面のURL http://example.com/wp-admin/

次のメッセージが管理画面に表示されます。

1つ以上のデータベースが利用できません。修復する必要があるかも知れません。

WordPress データベース接続確立エラー
WordPress データベースエラー

repaired をクリックすると、次のメッセージが表示されます。

WordPress データベース接続確立エラー
WordPress データベースエラー

因みにメッセージが表示されるURLは・・

  • http://example.com//wp-admin/maint/repair.php

このページを使用してデータベースの問題を自動的に修復できるようにするには、wp-config.phpファイルに次の行を追加し、このページをリロードしてください。

define('WP_ALLOW_REPAIR', true); 

この一行を「wp-config.php」に追加すると、自動で修復してくれるとのこと。このページをリロードするのでページは閉じないでおきます。

define(‘WP_ALLOW_REPAIR’, true);

wp-config.php

wp-config.phpには、データベースへの接続(データベース名やパスワードなど)の情報が含まれています。その wp-config.php に上の一行を加えます。

wp-config.php は、WordPressをインストール後の設定で得た情報により作られます。WordPressのファイルディレクトリの直下に置かれています。

WordPress データベース接続確立エラーの対処法
WordPress データベースエラー

define(‘WP_ALLOW_REPAIR’, true); を追加する

define(‘WP_ALLOW_REPAIR’, true); はデータベースを自動で最適化してくれます。


この定義( define(‘WP_ALLOW_REPAIR’, true); )だけで機能は有効化されます定義を設定すれば、ユーザーがログインして機能にアクセスする必要はありません。この定数の目的は壊れたデータベースの修復を主眼としているためです。多くの場合、データベースが壊れるとユーザーはログインさえできません。

セキュリティ上、この定義を追加後、修復最適化が終わると削除します。

wp-config.php を編集します。

追加する場所はどこでもいいですが、自動修復最適化が終わったら削除しますので、削除しやすいところに追加します。

リロード

このページを利用してとメッセージが表示されているページをリロードします。ページのURLは・・

  • http://example.com//wp-admin/maint/repair.php

以下の選択ができます。

  • データベースの修復(Repair Database)
  • データベースの修復と最適化(Repair and Optimize Database)

どちらかを選び修復します。

WordPress データベースエラー
WordPress データベースエラー

修復完了と、自動最適化の定義( define(‘WP_ALLOW_REPAIR’, true); )を削除するようメッセージが表示されます。

WordPress データベースエラー
WordPress データベースエラー

上記定義でも自動修復最適化ができない時

原因はサーバー側や様々なことが原因となり得るので、一応レンタルサーバーに問い合わせてみることも良いと思いますが、私が行い改善したことを記載しておきます。

参考 データベース接続確立エラー→WordPresフォーラム

wp-config.php の見直し

データベース名、ユーザー名、パスワードを確認します。

/** WordPress のためのデータベース名 */
define( ‘DB_NAME’, ‘database_name_here’ );

/** MySQL データベースのユーザー名 */
define( ‘DB_USER’, ‘username_here’ );

/** MySQL データベースのパスワード */
define( ‘DB_PASSWORD’, ‘password_here’ );

/** MySQL のホスト名 */
define( ‘DB_HOST’, ‘localhost’ );

/** データベースのテーブルを作成する際のデータベースの文字セット */
define( ‘DB_CHARSET’, ‘utf8’ );

/** データベースの照合順序 (ほとんどの場合変更する必要はありません) */
define( ‘DB_COLLATE’, ” );

データベース名やパスワードなど問題がないようでしたので、データベースを復元してみました。

データベースの復元/ データベース接続確立エラー

管理画面に入ることができませんので、当然プラグインなどでの復元はできません。数日前にバックアップしていたデータベースがありましたので、それを利用して phpMyAdmin で復元しました。

私のデータベースのバックアップファイルはgzip形式(拡張子 .gz)で圧縮されたファイルです。その他拡張子 .sql .tar.gz などで圧縮されている場合もあります。

phpMyAdmin インポート(復元)/ データベース接続確立エラー

テーブルを指定して、インポートします。

WordPress データベースエラー
WordPress データベースエラー

phpMyAdminで復元する手順 /データベース接続確立エラー

  1. phpMyAdmin にログインする
  2. データベースをクリックする
  3. テーブル(データベース名)を選択
  4. インポートタブを開く
  5. ファイルを選択をクリック
  6. ファイルの形式で SQLを選択
  7. 実行

自動修復・最適化で改善されなかった場合、データベースの復元で改善しましたが、エラーの原因も様々で特定できませんし、オススメはできません。

WPのエラー一覧と対処法/WordPress