MYSQL回收碎片空间

一般大批量删除或者更新后会产生碎片,需要回收

以MYSQL5.7为例

查看碎片大小 :

SELECT TABLE_NAME, ROUND((DATA_LENGTH+INDEX_LENGTH)/1024/1024,2) AS total_mb,ROUND(DATA_FREE/1024/1024,2) AS free_mb FROM information_schema.TABLES WHERE TABLE_NAME='m_log';

回收碎片并更新统计信息:

ALTER TABLE m_log ENGINE=InnoDB, ALGORITHM=INPLACE, LOCK=NONE;

ANALYZE TABLE m_log;

相关推荐
Elastic 中国社区官方博客7 小时前
教程:监控 Java 应用
java·开发语言·数据库·elasticsearch·搜索引擎·全文检索
xixingzhe27 小时前
秒杀库存三种缓存实现方案
数据库·redis·缓存
软件交付观察室7 小时前
数据大屏总数与明细为什么对不上?2026项目开发排查指南
软件测试·数据库·sql·sqlite·数据可视化
倔强的石头_7 小时前
数据集成软件怎么选 研究了一圈,我盯上了金仓KFS
数据库
正在走向自律7 小时前
KingbaseES 列存储踩坑记:cstore_fdw 建表灌数全过程,以及数据改不动怎么办
数据库·国产数据库·kingbasees·金仓数据库·列存储
我科绝伦(Huanhuan Zhou)7 小时前
Oracle 体系结构深度解析:从内存、进程到日志与事务一致性的全链路技术详解
数据库·oracle
一木 之林7 小时前
LangChain 第8章 记忆系统:短期/长期记忆与 PostgreSQL 持久化
数据库·postgresql·langchain
qq_452396237 小时前
第七篇:《向量数据库选型:从 Chroma 到 Milvus 的落地对比》
数据库·milvus
云絮.7 小时前
mybatis(二)
java·数据库·mybatis
yyuuuzz7 小时前
云服务器搭建个人博客记录:一次访问超时的复盘
运维·服务器·数据库