当前位置:网站首页>MySQL删除数据后,释放磁盘空间
MySQL删除数据后,释放磁盘空间
2022-08-02 21:43:00 【怪只怪满眼尽是人间烟火】
drop table table_name 立刻释放磁盘空间 , Innodb和MyISAM;
truncate table table_name 立刻释放磁盘空间, Innodb和MyISAM,truncate table其实有点类似于drop table 然后create;
delete from table_name 不会释放磁盘空间, Innodb和MyISAM, 新insert的数据会插入到原来的位置,比如删除100万数据后,数据文件不会变小,重新插入一百万数据后,数据文件不会变大。
可以在删除掉数据后执行下面语句,会立刻释放磁盘空间,但该操作会锁定表结构
optimize table table_name查看表占用硬盘空间大小的SQL语句如下:(默认用M做展示单位)
SELECT
TABLE_NAME,
( DATA_LENGTH + INDEX_LENGTH )/ 1048576 AS size_Mb,
TABLE_ROWS
FROM
information_schema.TABLES
WHERE
TABLE_SCHEMA = 'db_name'
AND TABLE_NAME = 'table_name'还可以执行:
alter table tab_name ENGINE = 'InnoDB';
注意:该操作执行的时候会把该表格先写入一个tmp临时表,所以磁盘剩余空间必须大于表空间,否则会执行失败。
边栏推荐
猜你喜欢
随机推荐
总结嵌入式C语言难点(2部分)
软件测试到底自学还是报班?
golang 刷leetcode:祖玛游戏
js function anti-shake and function throttling and other usage scenarios
H5网页播放器EasyPlayer.js播放器界面的加载效果无法消失是什么原因?
在迁移测试中,源表、中间表、目标表的迁移规则
Add and delete all these years, finally planted in MySQL architecture design!
工厂模式理解了没有?
【TypeScript】深入学习TypeScript类(下)
IP Protocol (Internet Protocol)
牛客刷题:手动实现数组filter方法
【使用pyside2遇到的问题】This application failed to start because no Qt platform plugin could be initialized.
Go语言如何操作文件
I interviewed a 985 graduate, and I will never forget the expression when answering the "performance tuning" question
一群搞社区的人
Abstract Factory Pattern
Summary of @Transactional transaction invocation and effective scenarios
四、字符常量 & 字符串
FRED应用:激光二极管光源耦合到光纤的仿真
【c】操作符详解(一)









