mysql之delete刪除記載後數據庫年夜小不變。本站提示廣大學習愛好者:(mysql之delete刪除記載後數據庫年夜小不變)文章只能為提供參考,不一定能成為您想要的結果。以下是mysql之delete刪除記載後數據庫年夜小不變正文
當DELETE前面跟前提的時刻,則就會湧現這個成績
delete from table_name where 前提
刪除數據後,數據表占用的空間年夜小不會變。
不跟前提直接delete的時刻。
delete from table_name
消除了數據,同時數據表的空間也會變成0
假如曾經刪除表數據的很年夜一部門,或許有許多變更和變長表行(VARCHAR表,VARBINARY、BLOB或文本列)停止了更改,由於刪除操作後在數據文件中留下碎片而至。DELETE只是將數據標識位刪除,並沒有整頓數據文件,當拔出新數據後,會再次應用這些被置為刪除標識的記載空間,可使用OPTIMIZE TABLE往返收未應用的空間,並整頓數據文件的碎片。
OPTIMIZE TABLE只對MyISAM, BDB和InnoDB表起感化。
OPTIMIZE TABLE 表名;
針對myisam引擎,應用optimize table 還有以下功效:
If the table has deleted or split rows, repair the table. [修復表] If the index pages are not sorted, sort them. [索引未排序,會排序] If the table's statistics are not up to date (and the repair could not be accomplished by sorting the index), update them.[若表的統計信息不是最新的,更新它]
對myiam數據表停止批量刪除後,發明空間沒有收受接管,要經由過程optimize table往返收空間
以上所述是小編給年夜家引見的mysql之delete刪除記載後數據庫年夜小不變的相干常識,願望對年夜家有所贊助!