エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
MySQL(InnoDB)のテーブルから行を大量削除する場合に気をつけること - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
MySQL(InnoDB)のテーブルから行を大量削除する場合に気をつけること - Qiita
DBのデータを、月1などのバッチ処理やスポット処理でまとめて削除するときの注意点です。 いわゆる「MyS... DBのデータを、月1などのバッチ処理やスポット処理でまとめて削除するときの注意点です。 いわゆる「MySQLあるある」の1つですが、実際に問題が発生すると、すぐには原因がわからず焦りますね。 2017/12/22追記: (古い記事なのに)まだまだある程度参照されているようですが、無駄に長くて回りくどい記事なので、要点(と若干の補足)だけ先に箇条書きしておきます。 MySQL(InnoDB)では、少量のデータページをサンプリングしてINDEX統計情報を生成し、オプティマイザのコスト計算などに使っています。 ある程度の行数分更新(INSERT/UPDATE/DELETE)が行われると、INDEX統計情報がサンプリング・更新されます。 特に大量のDELETEを行っている途中・直後にINDEX統計情報のサンプリング・更新が行われると、実態と合わない統計情報になってしまい、オプティマイザのコスト計算

