WooCommerceでデータベースが肥大化してきたときに「予約済みアクション」のログを削除して容量を節約する方法(完了したactionschedulerの削除)

WooCommerceを長いこと運営していると、データベースが肥大化してきて、バックアップ容量が制限を超えてしまったり、バックアップ容量が無駄に大きくなってしまう問題があります。(データベースの容量を節約したくなる)その中でも肥大化しやすい・不要な「予約済みアクション」を削除する方法をメモしておきます。

WooCommerceの「予約済みアクション」とは

管理画面の「WooCommerce→ステータス」に進んで「予約済みアクション」タブをクリックすると表示されます。

この「予約済みアクション」タブでは、オンラインストアのいろいろなタスクを管理する機能で、特定の時間に実行されるジョブ(例:メール送信や注文処理)を監視できます。メールの配信や自動処理、データベースの更新などを自動で行って、ストアが効率的に動作できるようにします。

ジョブが完了すると、状態が「完了」になります。完了したジョブの記録は、削除されることなくそのまま残ってしまうので、データベースの容量を消費します。

完了したジョブの削除方法

SSHでログインするか、phpMyAdminなどでWordpressで使っているデータベースにログインして、下記のSQLを実行します。

DELETE FROM wp_actionscheduler_actions WHERE status = 'complete';
DELETE FROM wp_actionscheduler_logs;

テーブル名「wp_actionscheduler_actions」および「wp_actionscheduler_logs」は、環境によって違う場合があります。その場合は「(ランダムな文字列)actionscheduler_actions」および「(ランダムな文字列)actionscheduler_logs」となっている場合があるので、お使いの環境に合わせていただけたらと思います。

カテゴリーn/a

質問・コメントなどあると嬉しいです