mysql delete文 スロークエリ
原因
おそらくwhereで指定しているカラムの絞り込み時、に時間がかかっていた。
参考:【SQL】DELETE文が遅いときのチューニング方法 | SE日記.
スロークエリの時の状態. このような状態でupdated_atをwhereの条件としていて、件数が多い、updated_atにインデックスがないのが原因と考えられる。
delete from テーブル名 where updated_at < '特定の日付';
なので、プライマリーキーであるidをwhereの条件として指定する. プライマリキーは作られた時点で一意制約なので、計算量としてももっとも早い. 改善版.
delete from テーブル名 where id in (idのリスト);