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

 更新时间:2016年06月26日 16:46:58   作者:爱上猫的鱼  
这篇文章主要介绍了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删除记录后数据库大小不变的相关知识,希望对大家有所帮助!

相关文章

  • mysql 5.7.17 winx64解压版安装配置方法图文教程

    mysql 5.7.17 winx64解压版安装配置方法图文教程

    这篇文章主要为大家详细介绍了mysql 5.7.17 winx64解压版安装配置方法图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-06-06
  • MYSQL数据库基础之Join操作原理

    MYSQL数据库基础之Join操作原理

    这篇文章主要给大家介绍了关于MYSQL数据库基础之Join操作原理的相关资料,连接(join)查询是将两个查询的结果以“横向对接”的方式合并起来的结果,需要的朋友可以参考下
    2021-07-07
  • Dbeaver连接MySQL数据库及错误Connection refusedconnect处理方法

    Dbeaver连接MySQL数据库及错误Connection refusedconnect处理方法

    这篇文章主要介绍了dbeaver连接MySQL数据库及错误Connection refusedconnect处理方法,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-08-08
  • Mysqlslap MySQL压力测试工具 简单教程

    Mysqlslap MySQL压力测试工具 简单教程

    Mysqlslap是从5.1.4版开始的一个MySQL官方提供的压力测试工具。通过模拟多个并发客户端访问MySQL来执行压力测试,同时详细的提供了“高负荷攻击MySQL”的数据性能报告。并且能很好的对比多个存储引擎在相同环境下的并发压力性能差别
    2011-10-10
  • mysql数据库设置utf-8编码的方法步骤

    mysql数据库设置utf-8编码的方法步骤

    这篇文章主要介绍了mysql数据库设置utf-8编码的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • mysql实现事务的提交和回滚实例

    mysql实现事务的提交和回滚实例

    这篇文章主要介绍了mysql实现事务的提交和回滚,需要的朋友可以参考下
    2014-06-06
  • MySQL中几种插入和批量语句实例详解

    MySQL中几种插入和批量语句实例详解

    这篇文章主要给大家介绍了关于MySQL中几种插入和批量语句的相关资料,在mysql数据库中,实现批量插入数据与批量更新数据的例子,即批量insert、update的方法,需要的朋友可以参考下
    2021-09-09
  • Mysql技术内幕之InnoDB锁的深入讲解

    Mysql技术内幕之InnoDB锁的深入讲解

    这篇文章主要给大家介绍了关于Mysql技术内幕之InnoDB锁的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • mysql 索引合并的使用

    mysql 索引合并的使用

    索引合并是mysql底层为我们提供的智能算法。本文就介绍了mysql 索引合并的使用,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • MySQL嵌套事务所遇到的问题

    MySQL嵌套事务所遇到的问题

    这篇文章主要介绍了MySQL嵌套事务所遇到的问题的相关资料,需要的朋友可以参考下
    2017-02-02

最新评论