WordPressブログがデータベース接続確立エラーになったので、MySQLを新規作成してデータ移設&wp-config.phpを再設定で復活!おまけに高速化!の手順(ロリポップ・エンタープライズ編)
長ーいタイトルそのままなのですが、
先日、ブログで利用してるレンタルサーバー「ロリポップレンタルサーバー」の、
エンタープライズプランのサーバー移設メンテナンスが行なわれました。
SSD搭載の高速サーバーに夜間の間に自動で移設されるという事で、
ワードプレスの表示高速化もされて大変ありがたいかぎりなのですが、
移設メンテナンス完了後に「データベース接続確立エラー」のトラブル発生!
おっかしいなぁ、ユーザー側では何もしなくていいはずなんだけど、
サイトは見れないし、WordPressにもログインできない!、、、ってことで、
データベースサーバーをMySQL5.1から最新の5.6に移して、
wp-config.phpを新たに設定し直す、というやり方で解決しました。
その手順を以下にダダーッと。
まず最初にエラーになったサイトのサーバー環境
- WordPress 4.9.4
- WordPressテーマ「Minimal WP」
- MySQL 5.1
- PHP 7.1
もう5年位前に始めたブログなので、MySQLバージョンが古い5.1のままでした。
で、PHPは去年のブログリニューアルの時に、
5.6⇒7.1にバージョンアップしていました。
今回のサーバー移設メンテナンスでは、WordPressのデータベース名、
MySQLのユーザー名・パスワード・ホスト名は変更されてないので、
よくあるwp-config記述ミスのエラーではない!こちらでは原因不明!お手上げ!
で、土日だし24時間待っても改善されなかったので、
同じサーバー内でデータベースのお引越しをしました。
ついでにMySQL5.1⇒5.6にバージョンアップ!
ちなみに、月曜日にサポートからメールが来て、
「データベースサーバーの一部について、移設先のwebサーバーからの
アクセスが制限されている状況でございました。
※現在は対応を行い、接続可能となっております。」
ってなことで、サーバー側の問題だったみたい。なんにしても解決したのでよし!
旧データベースから新規データベースにWordPressのデータを移す手順(ロリポップのMySQL5.1⇒5.6にバージョンアップする方法)
- 現在のデータベースからデータをエクスポート
- 新規データベースを作成
- 新規データベースにデータをインポート
- wp-config.phpのデータベース情報を書き直し
ざっくりの手順はこれだけ。わりと簡単です。
ではさっそくやってみます。
手順1:現在のデータベースからデータをエクスポート
まずはロリポップレンタルサーバーの管理画面へログイン。
そしてデータベースの一覧画面へ。
データを移したいデータベースを選択(「操作する」ボタンをクリック)。
パスワード確認ボタンを押すとパスワードが表示されるのでコピー。
「phpMyAdminを開く」ボタンをクリック。
phpMyAdminのログイン画面が開くので、
先ほどのパスワードとユーザー名でログイン。
こんな感じでWordPressで使ってるデータベースに入れました。
そしてデータをエクスポートします。
上に並んでるメニューから「エクスポート」をクリックして、
エクスポート方法「詳細-可能なオプションをすべて表示」を選択。
生成オプションの追加コマンドから、
DROP TABLE/VIEW/PROCEDURE/FUNCTION/EVENTコマンドを追加する
にチェックを入れます。
それ以外は触らなくてOK。
そして一番下の「実行」ボタンをクリックで、エクスポートが始まります。
自分のパソコンにデータベースのバックアップデータが保存されます。
手順2:新規データベースを作成
またロリポップレンタルサーバーのデータベース管理画面に戻って、
データベースを新規作成します。
ここで「MySQL5.6」を選択します(というか新規だと5.6しか選択できない)。
スタンダードプランはMySQLが30個、エンタープライズプランは100個作れるので、
前のデータベースは残したまま(万が一何かあっても簡単に元に戻せるように)、
新規に作成すればOK。
今度は空っぽのデータベースが出来上がりました。
ここに先ほどエクスポートしたデータをインポートします。
手順3:新規データベースにデータをインポート
上のメニューの「インポート」からzip形式のデータをアップロードします。
エクスポート時には「xxxxxx.sql」というファイルが保存されてるので、
「xxxxxx.sql.zip」というzip形式に圧縮しておきます。
軽いデータなら1分も経たずにぴゅっとアップロード完了。
この作業で古いデータベースから新しいデータベースに、
WordPressのデータを全部移転できました。
手順4:wp-config.phpのデータベース情報を書き直し
WordPressをインストールする時に最初に作られる、
データベース情報なんかが書かれているwp-config.phpを最後に修正します。
ロリポップFTPでサーバーの中にログインして、
wp-config.phpファイルを開きます。
右上の「現在の属性」が「呼び出し」だけにしか最初はチェックが入ってないので、
「書込」にもチェックを入れて、一旦保存すると修正できるようになります。
- WordPressのデータベース名
- MySQLのユーザー名
- MySQLのパスワード
- ホスト名
この4カ所を、新しいデータベースのものに書き換えます。
作業が終ったら、「現在の属性」の「書込」のチェックを外して、
必ず「呼び出し」だけに戻してから終了。
サイト表示を確認して、新しいデータベースから記事が読み込まれてれば成功!
MySQLを5.1⇒5.6にバージョンアップしたら表示速度も高速化した?
ちなみに、新しいSSD搭載のサーバーになったし、
MySQLも5.1⇒5.6にバージョンアップしたし、
ついでにPHP7.1(CGI版)⇒PHP7.1モジュール版にアップデートできたし、
これもしかして表示速度が速くなったんじゃない?ということでチェック。
ちょうど先月、このブログの表示高速化をやったばかりなので、
その時のデータと比較してみます。
上の画像が先月の高速化後のGTmetrixの結果。
自分ではこれが精一杯だったので、ここからさらに早くなったらラッキー。
で、今回のバージョンアップ後。
おっ、数値が改善されてる!さらにちょっぴり高速化に成功しました。
同じサーバーに入ってた全サイトで、読み込みが0.2〜0.4秒早くなった。
ついでにGoogleのPageSpeed Insightsでもチェック。
「Fast」で「Good」。バッチリ!
まとめ
というわけで、サーバートラブルでこりゃまいった!というピンチから復活して、
あれこれ環境が最新版に改善されて、さらに高速化もできた!ということで、
棚からぼたもち的な感じですかね。
*ブログ運営はレンタルサーバー+Minimal WP テンプレートがオススメです。
ブログやホームページ始めませんか?