🗄️ WordPressデータベース最適化ガイド
WordPressはデータベース(MySQL/MariaDB)にすべての情報を保存しています。長期間運営していると、不要なデータが蓄積してデータベースが肥大化し、サイトの表示速度が低下します。定期的な最適化でパフォーマンスを維持しましょう。
データベース最適化が必要な理由
WordPressを長期間運用していると、データベースには以下のような不要なデータが蓄積されていきます。
蓄積される不要データ
- リビジョン:記事の過去バージョンが自動保存される
- 自動下書き:編集中の一時保存データ
- ゴミ箱の投稿:削除したはずの記事が残っている
- スパムコメント:承認待ち・ゴミ箱のコメント
- トランジェント:一時的なキャッシュデータ
- 孤立したメタデータ:削除された投稿に紐づく不要データ
最適化のメリット
- データベースサイズの削減
- クエリ処理速度の向上
- サイト全体のパフォーマンス改善
- バックアップ時間の短縮
改善例:数年運営しているサイトでは、最適化により データベースサイズが30〜50%削減されることも珍しくありません。
おすすめ最適化プラグイン
| プラグイン名 | 特徴 | おすすめ度 |
|---|---|---|
| WP-Optimize | 最も人気。UI が使いやすく初心者向け | ★★★★★ |
| Advanced Database Cleaner | 詳細な最適化が可能。上級者向け | ★★★★☆ |
| WP-Sweep | シンプルで軽量。必要最小限の機能 | ★★★★☆ |
| Optimize Database after Deleting Revisions | リビジョン削除に特化 | ★★★☆☆ |
WP-Optimizeの使い方
初心者にも使いやすい「WP-Optimize」を使った最適化手順を解説します。
インストールと有効化
- WordPress管理画面で「プラグイン」→「新規追加」
- 「WP-Optimize」を検索
- 「今すぐインストール」→「有効化」
最適化の実行
- 管理画面で「WP-Optimize」→「Database」をクリック
- 最適化したい項目にチェックを入れる:
- 投稿リビジョンのクリーン
- 自動下書きのクリーン
- 削除済み投稿のクリーン
- スパムコメント・削除済みコメントのクリーン
- 期限切れトランジェントのクリーン
- 「最適化を実行」ボタンをクリック
必ずバックアップを取ってから実行:最適化作業はデータベースを直接編集します。万が一に備えて、必ずバックアップを取ってから実行してください。
自動最適化のスケジュール設定
- 「WP-Optimize」→「Settings」タブ
- 「Scheduled clean-up and optimization」にチェック
- 実行頻度を選択(週1回がおすすめ)
- 最適化する項目を選択
- 「Save settings」をクリック
推奨頻度:週1回または月1回の自動最適化がおすすめです。毎日実行する必要はありません。
リビジョンの管理
リビジョンは記事の過去バージョンを自動保存する便利な機能ですが、無制限に保存されるとデータベースを圧迫します。
wp-config.phpでリビジョン数を制限
wp-config.phpファイルに以下のコードを追加することで、保存するリビジョン数を制限できます。
設定例:リビジョンを最大5つまでに制限する場合、wp-config.phpに以下を追加:
define('WP_POST_REVISIONS', 5);
リビジョン保存を無効化
リビジョン機能が不要な場合は、完全に無効化することもできます。
define('WP_POST_REVISIONS', false);
注意:リビジョンを無効化すると、記事を誤って編集した際に元に戻せなくなります。最低でも3〜5個は保存しておくことを推奨します。
phpMyAdminでの手動最適化
プラグインを使わず、phpMyAdminから直接データベースを最適化することもできます。
phpMyAdminへのアクセス
- レンタルサーバーの管理画面にログイン
- 「phpMyAdmin」をクリック
- WordPressのデータベースを選択
テーブルの最適化手順
- 左側のデータベース一覧からWordPressのDBを選択
- すべてのテーブルにチェックを入れる
- 「チェックしたものを:」で「テーブルを最適化する」を選択
- 実行
上級者向け:phpMyAdminでの操作は慎重に行ってください。誤った操作でデータベースが破損する可能性があります。必ずバックアップを取ってから実行しましょう。
トランジェントの管理
トランジェントは、WordPressが一時的なデータを保存する仕組みです。期限切れのトランジェントが残っていると、データベースを圧迫します。
トランジェントとは
- プラグインやテーマが一時的にデータをキャッシュする
- 有効期限が設定されている
- 期限切れ後も自動削除されないことが多い
トランジェントの削除
WP-Optimizeやその他の最適化プラグインで「期限切れトランジェントのクリーン」を実行すれば、まとめて削除できます。
安全性:期限切れトランジェントの削除は安全です。必要なデータは再生成されます。
データベースのバックアップ
最適化作業の前には、必ずデータベースのバックアップを取りましょう。
バックアップ方法
1. プラグインを使う
- BackWPup、UpdraftPlusなどのバックアッププラグイン
- 自動スケジュール機能あり
2. phpMyAdminでエクスポート
- phpMyAdminにログイン
- WordPressのデータベースを選択
- 「エクスポート」タブをクリック
- 「実行」をクリック
- SQLファイルがダウンロードされる
関連ページ:詳しくはバックアップの自動化をご覧ください。
データベース最適化の頻度
| サイトの規模・更新頻度 | 推奨最適化頻度 |
|---|---|
| 毎日更新する大規模サイト | 週1回 |
| 週数回更新する中規模サイト | 月1〜2回 |
| 月数回更新する小規模サイト | 月1回または3ヶ月に1回 |
| ほとんど更新しないサイト | 半年に1回 |
最適化後の確認
データベースサイズの確認
- WP-Optimizeの「Database」タブ
- 「Database Information」でサイズを確認
- 最適化前後で比較
サイトの動作確認
- すべてのページが正常に表示されるか
- 画像が表示されるか
- プラグインが正常に動作するか
- コメント機能が動作するか
トラブル発生時:最適化後にサイトが正常に動作しない場合は、バックアップから復元してください。
まとめ:データベース最適化のベストプラクティス
必須対策
- 最適化プラグイン(WP-Optimize)を導入
- 月1回以上の定期最適化
- 最適化前に必ずバックアップ
- リビジョン数を制限(5個程度)
推奨対策
- 自動最適化スケジュールを設定
- 期限切れトランジェントの定期削除
- 不要なプラグインの削除(残骸データも削除)
効果:定期的な最適化により、サイトの動作が軽快になり、バックアップ時間も短縮されます。