ちょっと表題だけだと質問の意図が分かりづらいかもしれません。(良い言い回しが思いつかなかった)
内容としては MySQL において DELETE を実行したのですが、DBの容量が減らず、
調べてみると「MySQL の DELETE ではDBの容量は減らず、空いた分は再利用される」との情報が見つかり、
一旦減らすことは諦めて、現状維持を目的として定期的に古いレコードを削除するスクリプトを組み込みました。
※ALTER TABLE や OPTIMIZE TABLE などは実行していないです。DELETE だけです。
しかし1週間後、DBの容量を確認し見ると明らかに容量が減っており、
それ自体は良かったのですが、前情報では減らないという認識だったので戸惑っております。
このあたりの仕様ご存じの方お教えいただけないでしょうか。
なお、当方の環境としては以下のような感じです。
- DB:MySQL 5.5
- 削除対象のテーブルのエンジン:Innodb
- 削除対象のテーブルの容量:200GB
- 1日に増えるレコードの容量:500MB
- 定期的に削除するスクリプトの仕様:30分おきに50MB分のレコードを削除
あと、以下情報を参照しました。
https://teratail.com/questions/990
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/12/04 13:08 編集