← リビジョン削除の全体像 | WordPress プラグイン一覧 | ブログ
最終更新: 2026年7月12日 | 執筆: Takahiro Nishii
結論: phpMyAdmin の SQL でリビジョンは削除できますが、おすすめは慎重にです。
WHERE post_type='revision' の書き漏れで公開記事まで消す、関連する wp_postmeta を残して孤立データを作る、といった事故が起きやすいからです。実行するならバックアップ必須、不安ならプラグインの方が安全です。
一度、phpMyAdmin で
DELETE を打つ手が止まったことがあります。WHERE を一文字間違えれば、公開記事ごと消える。取り消しはできない。あの緊張感を味わってから、私は「直接 SQL は最終手段」と考えるようになりました。
phpMyAdmin での削除SQLは?
リビジョンだけを削除する基本の SQL はこうです。
DELETE FROM wp_posts WHERE post_type = 'revision';
ただしこれだけでは、リビジョンに紐づく wp_postmeta の行が残ることがあります。関連データも含めるなら、削除順序と結合を意識する必要があります。
なぜ「危険」と言われる?
- 取り消せない —
DELETEは即時。Ctrl+Zは効かない - 条件ミスの被害が大きい —
WHEREを誤ると公開記事も対象になる - 孤立データが残る —
wp_postmetaなどを取りこぼすと不整合の原因に - テーブル接頭辞の違い —
wp_以外の接頭辞環境で対象を誤る
そもそもリビジョンが何かを整理したい場合は WordPressのリビジョンとは?を先に読むと、どのレコードを消していいか判断しやすくなります。
それでも SQL で行うなら?
- 完全バックアップ(エクスポートで丸ごと保存)
- まず
SELECT COUNT(*) FROM wp_posts WHERE post_type='revision';で件数を確認 - 接頭辞(
wp_か否か)を確認 DELETEを実行- 削除後はOPTIMIZE TABLE で最適化
プラグインならどこが安全?
Takahiro Revision Cleanup は、削除前に対象を一覧でプレビューできます。何が消えるかを目で確認してから実行でき、公開記事に触れない設計なので、SQL の書き間違いのような事故が起きません。
よくある質問
DELETE で公開記事が消えることはある?
WHERE post_type='revision' を付け忘れる・書き間違えると起こり得ます。だからこそ実行前バックアップと件数確認が欠かせません。
wp_postmeta の孤立データは問題になる?
すぐ不具合になるとは限りませんが、DB が不整合のまま太る原因になります。関連データもまとめて扱えるプラグインが無難です。
削除後に最適化は必要?
実サイズを縮めたいなら必要です。OPTIMIZE TABLE の手順を参照してください。
