源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

mysql之delete删除记录后数据库大小不变

  • 时间:2021-07-31 00:36 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要: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删除记录后数据库大小不变的相关知识,希望对大家有所帮助!
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部