WPで作成したサイトは、何かしらが原因で「データベース接続確立エラー」が起こってしまうことがあります。
原因はさまざまですが、「今回はユーザーを削除した結果から起こったエラー、そして修正方法」を紹介したいと思います。
今回の作業を行う際には、都度バックアップを取っておくようにしてください。
WPはデータベースが基礎となっている
WPというものはデータベース内に情報が入っています。
そしてそのデータベースにはユーザーが割り当てられています。
データベースもユーザーも、基本的にはご自身で決定したものだと思います。自動インストールでWPを設定した場合には自動で作成されます。
「wp-config」を見れると以下のように記述されています。
// ** Database settings – You can get this info from your web host ** //
/** The name of the database for WordPress */
define( ‘DB_NAME’, ‘●●●●●●_abcabc’ );/** Database username */
define( ‘DB_USER’, ‘▲▲▲▲▲▲_xyzxyz’ );/** Database password */
define( ‘DB_PASSWORD’, ‘■■■■■■’ );/** Database hostname */
define( ‘DB_HOST’, ‘mysql501b.xserver.jp’ );
このような感じになっているはずです。
つまり「このサイトは●●●●●●_abcabcというデータベースを▲▲▲▲▲▲_xyzxyzというユーザーが使用していてパスワードは■■■■■■です」ということです。
もし何かしらの都合で、「▲▲▲▲▲▲_xyzxyz」というユーザーを削除してしまったとします。
するとサイトにアクセスすると「データベース接続確立エラー」となりサイトは表示されなくなってしまいます。
解決策としては、ほかのユーザーを割り当てればよいです。
作業前には必ずバックアップ
まず念のため、エラーの起こっているサイトの「wp-config」をローカル環境にでもバックアップしておいてください。
「wp-config_old」といった具合で、名前を変更しておいてもよいかもしれません。
次にデータベースに割り当てるユーザーを決定します。
既にサーバーパネル内に存在するユーザーでもよいですし、新しくユーザーを作ってもよいでしょう。
そしてサーバーパネル内で該当するデータベースにアクセス権所有ユーザとして設定します。
最後に「wp-config」の内容を修正しサーバーにアップします。
修正する箇所は以下の部分です。
/** Database username */
define( ‘DB_USER’, ‘▲▲▲▲▲▲_xyzxyz’ );/** Database password */
define( ‘DB_PASSWORD’, ‘■■■■■■’ );
ユーザー名とパスワードを変更することになるかと思います。修正したらサーバーに再度アップして下さい。
すると、サイトのデータベース確立エラーは解消されます。
注意
これはユーザー名を削除してしまったことによるデータベース確立エラーの対処方法です。
そのほかのことが原因になっている可能性もあります。
よって再三繰り返しますが、かならずもともとの「wp-config」はバックアップしておいてください。また何をどのように変更したのかを1つずつメモしておいた方がよいと思います。
また今回の作業を行う際には、完全に自己責任でお願いします。あくまでも弊社ではこの方法で修正したことがあるということです。