国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

mysql之delete刪除記錄后數據庫大小不變

2020-01-18 22:21:31
字體:
來源:轉載
供稿:網友

當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刪除記錄后數據庫大小不變的相關知識,希望對大家有所幫助!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 博乐市| 邳州市| 黎城县| 铁岭市| 顺昌县| 吐鲁番市| 楚雄市| 武邑县| 郑州市| 漠河县| 塘沽区| 始兴县| 弋阳县| 襄樊市| 安吉县| 西华县| 水城县| 铁岭县| 孝昌县| 泽普县| 柳江县| 南丹县| 昌江| 元谋县| 新乡县| 民县| 上杭县| 平泉县| 邵阳县| 陇南市| 邳州市| 浮山县| 铜陵市| 蒲江县| 江源县| 禹州市| 上栗县| 临猗县| 奉节县| 海盐县| 太原市|