WordPressを重くするデータベースのオーバーヘッド対策

今日は他のプラグインを見直す前に、昨日書き漏らしていたけど重要なことを。
前回のは以下より。

積もったWordpressプラグインを全面的に見直してみた(メモリ対策編) | Nakamori Report

WordPressの反応が重くなる主要な理由を調べていくと大きな要因の一つとしてデータベース(MySQL)における問題がありましたので、それの原因と対処方法を書いてゆこうと思います。

スポンサーリンク

データベースのオーバーヘッドを最適化

データベース管理画面(さくらの場合phpMyAdminですね)を見てみると、様々なテーブルが並んでいますが、一番右に「オーバーヘッド」という項目があります。これは読み書きを繰り返すことで無駄な領域ができてしまう生じるもので、それがパフォーマンスを落とすようです。

overhead01

■参考:WordPressが調子悪い理由が分かった -> MySQLテーブルのオーバーヘッド » tune web

見た時にだいぶ多くの項目でオーバーヘッドが溜まっており、これじゃあパフォーマンスが悪くなるわ、と実感。
で、対策ですが、テーブル下の方に「オーバーヘッドのあるテーブルを確認してください」という項目があるのでそこをクリックするとオーバーヘッドのあるものにチェックがつきます。そして横の選択から「テーブルを最適化する」という項目があるので、それを選択すれば文字通り最適化が行われます。まあデータベースのでフラグみたいなものですね(ちょっと違うか)。
これで、オーバーヘッドになっていた項目がクリアになっているはずです。

自動最適化もしてくれるプラグイン「WP-DBmanager」

しかしながら、ここ数日を見ていると再びオーバーヘッドが生じることがあるのですよね。特に__optionsのテーブル。これがすぐに発生するのですよ。とはいってもいちいちDB管理画面を開いて同様の操作を行うのはめんどい、となりますが、そこはやっぱりWordpress、便利なプラグインがあります。それが「WP-DBmanager」。

WordPress › WP-DBManager « WordPress Plugins

これは文字通りDB管理プラグイン。本職はデータベースのバックアップですが、そのほかにも最適化やSQLクエリ操作などもやってくれます。
詳しい設定は以下のエントリーに。

小粋空間: WP-DBManager プラグイン

さらに便利なのは、オプションからの設定で自動実行のスケジュールが設定できること。

WP-DBManager

これでいちいち気にせずとも、実行してくれます。実効感覚は環境により違うと思うので、このプラグインでテーブルを見てオーバーヘッドの溜まり具合感覚から設定すればよいと思います。

しかし私、このプラグインは前から知っていたのですが、おはずかしながらデータベースバックアップのみと思っていました。こんな肝心な所を忘れていたとは……。

おまけ・Better Delete Revisionについて

ついでにもうひとつ負荷軽減プラグインについて補足。
さて、昨日リビジョンをクリアしているソフトとして「Delete-Revision」に少し触れましたが、現在はそのパワーアップ版とも言える「Better Delete Revision」が出ているとのこと

pc.casey.jp » [WordPress] 不要リビジョン削除とDB最適化プラグイン – Better Delete Revision
Delete-Revision はもう古い! – Better Delete Revision | さあ WordPress をはじめよう

まだ入れたばかりで検証はあまりしてないですが、ちょっと試してみようと思います。

割といい感じかな

先日挙げたことに加えて、この辺も見直してみるとかなりいい感じになると思います。自分もけっこうホワイト画面画面が減りました。もうちょっと設定とか考えて色々施せば、もっと改善が見られるかもしれません。

さて次回こそ他のプラグインの見直しポイントについて書こうと思います。

お仕事依頼について About contact
お仕事依頼について About Sitemap contact