ウェブサーバーは、ディスク容量や帯域幅に必ず上限があります。「ディスク容量は無制限」などと謳うWordPressの共用サーバーでは、利用規約をよく確認すると、何かしらの制限が見つかるもの。WordPressサイトのディスク容量は時間の経過とともに増えていき、やがてプランの上限を超えてしまうこともあります。
”無制限”のレンタルサーバーでディスク容量や帯域幅の上限を超えると、利用規約違反を知らせるメール通知が届くこともあるため要注意です。そこで今回は、WordPressのディスク使用量を確認する方法をご紹介します。ディスク容量の使用状況を確認できるサーバーコマンドは多数ありますが、SSHを使用するのが不安な方、専門知識を持たない初心者の方でも簡単に実行できる方法をご紹介します。
WordPressのディスク使用量を計算する方法
ディスク使用量を確認する方法の前に、ディスク使用量について理解しておきましょう。WordPressにおけるディスク使用量は、ファイルとデータベースの2つの要素で構成されます。割り当てられたリソースを占有するサーバーのディスク使用量は、この2つを合算したものになります。
サーバー上のファイル
ディスク容量を占有するWordPressファイルには、以下のようなものがあります。
- メディアライブラリにアップロードされた画像や動画(通常は
wp-content/uploads/
内) - PHP、CSS、JSなどのテーマおよびプラグインファイル(通常は
wp-content/themes/
とwp-content/plugins/
内) - WordPressのコアファイル(通常はルートまたは
public_html
フォルダ内) - カスタムウェブフォント、ライブラリなどFTP経由でアップロードされたファイル
MySQLデータベースファイル
WordPressのMySQLデータベースファイルには、投稿や固定ページのデータ、メタデータ、プラグインの設定情報、ログイン情報など、WordPressサイトのすべてのデータが保存されています。Kinstaをご利用の場合は、MyKinstaのダッシュボードでディスクの使用状況をすぐに確認することができます。

ディスクの使用状況を確認する8つの方法
KinstaをはじめとするマネージドWordPress専用サーバーの多くには、cPanelなどにアクセスすることなく、サイトのリソース使用状況を素早く確認できる独自の組み込みレポート機能があります。しかし、利用しているサービスによって、概要しか確認することができなかったり、CSVを介して詳細なレポートを取得できたりと様々です。ファイルとデータベースのディスク使用量の詳細なデータを確認するには、以下の方法を参考にしてみてください。
- MyKinstaでディスク使用量を確認する(Kinstaのお客様向け)
- サイトヘルス機能でディスクおよびデータベース使用量を確認する
- WordPressプラグインでデータベースのサイズを確認する
- phpMyAdminでデータベースのサイズを確認する
- cPanelでディスクおよびデータベース使用量を確認する
- サーバー会社に問い合わせる
- ディスク使用量をローカルに確認する
- SSH経由でディスク使用量を確認する
1. MyKinstaでディスク使用量を確認する(Kinstaのお客様向け)
Kinstaの専用コントロールパネル「MyKinsta」では、ディスク容量の使用状況をきめ細かく確認することができます。「WordPressサイト」を開くと、サイト一覧にそれぞれの合計ディスク使用量が表示されます。

2. サイトヘルス機能でディスクおよびデータベース使用量を確認する
WordPress 5.2のリリース以降、WordPressにはサイトヘルス機能が組み込まれています。これは画期的な機能で、WordPressサイトとサーバーに関する有益なデータを表示してくれます。このページでWordPressのディレクトリやデータベースの使用量も確認可能です。
WordPressの管理画面で「ツール」>「サイトヘルス」>「情報」に移動します。「ディレクトリとサイズ」タブを展開すると、以下のサイズが表示されます。
- WordPressディレクトリ
- アップロードディレクトリ
- テーマディレクトリ
- プラグインディレクトリ
- データベース
- インストールの合計

3. WordPressプラグインでデータベースのサイズを確認する
時に、WordPressのデータベースサイズに関する詳細なデータが必要になることもあります。例えば、データベースの容量を最も占めているファイルを特定するには、データベースの合計サイズを知るだけでは不十分です。そんなときには、Advanced Database Cleanerプラグインがお勧めです。データベースを分析してくれるプラグインで、無料版と有料版があります。

本記事執筆時点では、5万以上インストールされており、5つ星中5の評価を誇ります。WordPressの公式リポジトリから入手するか、管理画面の「プラグイン」>「新規追加」で検索してインストール可能です。
インストールして有効化したら、管理画面に出現する「WP DB Cleaner」メニューを選択し、「Tables」タブをクリックします。なお、テーマから脱線することになるため今回は触れませんが、このプラグインで、さまざまなデータベース最適化も行うことができます。

データベースのテーブル名は、そのテーブルを使用するプラグイン名に関連しているため、不要なテーブルをすぐに見つけることができます。例えば、「ab_press_optimizer」テーブルは、もう使用していないAB Press Optimizerプラグインのテーブル。また「icl_translations」テーブルは、多言語対応に役立つWPMLプラグインのテーブルですが、このサイトは多言語対応されていないため不要です。
プラグインを単に削除しても、データベースにそのプラグインのテーブルが残ることが多く、通常これらのテーブルはデータベースから削除可能です(この手順は次のセクションで)。ただし、必ずデータベースのバックアップを作成してから実行してください。データベースの操作が不安な方は、開発者に作業を依頼してください。

なお、Advanced Database Cleanerプラグインの欠点として、テーブル一覧をサイズで並び替えることができません。
例えば、以下のスクリーンショットでは「tve_leads」テーブルが重いことがわかります。これは人気の高いThrive Leadsプラグインのテーブルですが、このサイトでは使用されていません。このように、WordPressサイトのデータベースを確認すると、削除できるテーブルが複数見つかるはずです。

どのプラグインのテーブルかがわからない場合は、Googleで検索してみるとすぐに見つかります。

Advanced Database Cleanerプラグインの「Overview & Settings」タブでもデータベースサイズを確認することができます。

4. phpMyAdminでデータベースのサイズを確認する
phpMyAdminでデータベースのサイズとテーブルの分析を行うこともできます。phpMyAdminへのアクセス方法は、コントロールパネルやメールのリンクからなど、お使いのサーバーによって異なります。Kinstaのお客様は、該当のサイトの「情報」タブの「データベースへのアクセス」セクションにある「phpMyadminを開く」をクリックすると、phpMyAdminにアクセス可能です。

phpMyAdminを開いたら、左側に表示されるデータベースをクリックします。データベースのテーブルは、合計サイズで並び替えることができます。

以下のスクリーンショットでは、(コア以外の)重いデータベーステーブルの70%以上が、サイトですでに使用していないプラグインによって生成されていることが判明。つまり、データベースが必要以上にディスク容量を消耗していることがわかりました。サイトを長く運営すればするほど、不要なデータが蓄積されている可能性が高くなります。

未使用のテーブルを削除するには、テーブルを選択してドロップダウンメニューから「Drop」(削除)を選択します。なお、先にも触れた通り、テーブルを削除する前に必ずデータベースのバックアップを作成してください。phpMyAdminでMySQLデータベースをバックアップする方法はこちらをご覧ください。Kinstaをご利用の場合は、MyKinstaでバックアップを作成することができます。

5. cPanelでディスクおよびデータベース使用量を確認する
お使いのサーバーサービスでcPanelを使用している場合は、サイドバーにディスク使用量の合計とMySQLデータベースの概要が表示されます。

より詳細なデータは、ディスク使用量レポートを確認しましょう。「ファイル」セクションにある「ディスク使用量」を開きます。

画面の下部でディスク使用量に応じてフォルダを並べ替え可能です。

MySQLデータベースのサイズを確認する別の方法として、「データベース」セクションにある「MySQLデータベース」に移動することもできます。

「現在のデータベース」にデータベースサイズの合計が表示されます。

6. サーバー会社に問い合わせる
サーバー会社に問い合わせるのも一つの方法です。サーバーコマンドを使ってディレクトリのツリーまたは詳細レポートを生成し、すぐに多くの容量を占有しているものを教えてくれるはずです。完成度の高いレポートではないかもしれませんが、必要なデータを入手できます。未使用のデータを削除することは、サーバー会社にも利点があるため、必ず対応してくれるはずです。
また、ステージングサイトがディスク使用量の合計に加算されているかどうかも重要です。Kinstaでは、お客様に可能な限り多くのスペースを提供するため、ステージングサイトはディスク使用量の合計から除外され、本番サイトのみが考慮されます。
7. ディスク使用量をローカルに確認する
WordPressのディスク使用量を確認するもう一つの方法は、ローカルコンピュータ上でデータを分析すること。以下2通りの方法があります。
- 方法1─サーバー会社のコントロールパネルからサイト全体のバックアップをダウンロード。Kinstaでは、ダウンロード可能なバックアップをワンクリックで入手できます。これが最も手っ取り早い方法です。
- 方法2─SFTPで接続し、サイト全体(または
/wp-content/
フォルダのみで十分な場合も)をダウンロード。サイトのサイズとインターネット接続によっては、やや時間がかかることがあります。
なお、お使いのサーバーサービスで使用帯域幅に料金が発生する場合、このダウンロードにも帯域幅が消費されることになることを念頭に置いてください(Kinstaでは、帯域幅の消費によって追加料金が発生することはありません)。そのため、この作業は頻繁に行わないほうがいいでしょう。半年に一度程度でOKです。また、小規模なサイトであれば、この点は心配する必要はありません。
これはやや手間のかかる方法ですが、データをすばやく分析し、好きなツールを使用できるため、ディスク使用量を確認するのに最も効率的な方法の一つです。
Windows
Windowsの場合は、無料のTreeSizeソフトウェアがおすすめです。
ダウンロードした/wp-content/
フォルダを選択すると、高速スキャンされ、以下のように表示されます。プラグインやサーバーからエクスポートする情報よりもはるかに有益な情報を取得できます。データをローカルで分析すれば、このような強力ツールの利点を活かすことができます。

重いフォルダに絞り込むと、アップロード時に最適化されていない大きな画像や写真が見つかるはず。以下のスクリーンショットでは、「mind-blown.gif」のサイズが3.5MB以上あり、明らかに最適化されていないことがわかります。アニメーションGIFを簡単に圧縮する方法はいくつかありますが、実施されていません。

ウェブ用に画像を最適化する方法、またWordPressでWebPを使用する方法は、それぞれ別の記事でご紹介しています。TreeSizeはサイトを素早く分析し、解決可能な問題を特定するのに非常に便利です。
Mac
Macをお使いの場合は、OmniDiskSweeperがおすすめです。完全無料で利用でき、/wp-content/
フォルダをスキャンし、サイトで最もスペースを占有している重たいファイルをすぐに特定することができます。

8. SSH経由でディスク使用量を確認する
最後に、SSHを使ってディスク使用状況を分析することもできます。基本的には上級者向けの方法になりますが、操作自体は比較的シンプルです。SSH経由でホスティングアカウントにログインし、以下のコマンドを実行します。1つ目のコマンドは、ディレクトリを変更するコマンドで、wp-contentフォルダにアクセスします。注)ディレクトリの場所はサーバー会社によっては異なることがあります。
cd public/wp-content
その後、次のコマンドを使用してファイルをサイズの小さい順に並べ替えます。
du -sh * | sort -h
サイトで最もスペースを占めているものが特定できるまで、このコマンドを使用して分析していきます。今回の例では、uploadsフォルダが最も重たいフォルダです。

以下のように、2016年4月(04)のフォルダは他の月のフォルダよりもはるかに大きいことがわかります。

ディレクトリにアクセスすると、巨大なGIPファイルとPNGファイルが格納されていることがわかりました。画像は100KB未満に抑えることをお勧めします。

WordPressのディスク使用量を抑えるヒント
WordPressサイトのディスク使用量を抑える方法はいくつかあります。
- 画像最適化で、画像サイズを100 KB未満に抑える
- Media Cleanerのようなプラグインで未使用のメディアファイルを削除
- 古いテーマとプラグインの削除
- 使用しなくなったプラグインのデータベーステーブルを削除(自動読み込みデータの扱い方はこちら)
- (上でご紹介したいずれかの方法で)WordPressサイトを分析して重たいファイルを特定し、必要であるかどうかを確認する
- データベースの効果的なデータレイクのため、WordPressのリビジョン機能を制限または無効にする
- 古いログファイルの削除
- バックアップファイルを削除してオフサイトに保存する(MyKinstaのバックアップは、プランのディスク使用量には計上されません)
- スパムおよびゴミ箱に入れたコメントを整理して削除する
ディスク容量の上限を引き上げるには
上記のヒントを参考にディスク容量を最適化しても容量が足りない場合は、ディスク容量の上限を引き上げることをおすすめします。
Kinstaのお客様には、MyKinstaからディスク容量アドオンを購入できます。セットアップが簡単で、KinstaのCDNと完全に互換性があり、普段のお支払いに計上されます。
お使いのサーバーサービスにこのようなアドオンがない場合は、Amazon S3やGoogle Cloud Storageなどの外部ストレージサービスにコンテンツを分散することも可能です。
まとめ
専門知識を持たない方でも、WordPressのディスク使用量とデータベースサイズを確認できる方法がいくつかあります。サイトを運営していれば、時とともに不要なファイルやデータベーステーブルが自然と蓄積されていくもの。半年に一度程度、ディスク使用量の確認を行うことで、ディスク使用量を抑えてホスティング費用を削減し、サイトを高速化することができます。
他にも、WordPressサイトのディスク使用量を確認する方法をご存知でしたら、以下のコメント欄よりぜひお知らせください。