千家信息网

InnoDB磁盘空间利用率的查看方法

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,这篇文章主要讲解了"InnoDB磁盘空间利用率的查看方法",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"InnoDB磁盘空间利用率的查看方法"吧!pag
千家信息网最后更新 2026年10月31日InnoDB磁盘空间利用率的查看方法

这篇文章主要讲解了"InnoDB磁盘空间利用率的查看方法",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"InnoDB磁盘空间利用率的查看方法"吧!


page利用率
主要是指btee里面每个page的使用被使用的空间大小。我们知道InnoDB默认一个page大小是16k。但实际使用情况不会总用满
我们定义为所有page的总使用字节除以总字节数。
在理论分析之前,我们要先弄个工具,查一下。

实例统计
写了一个简单的工具,读ibd文件上的每个page,算出每个page的实际使用字节,可以得到利用率。
我们找了线上一个库来模拟。表中有1个自增主键和3个非聚簇索引。不影响结论地简化为如下:
CREATE TABLE `ctu_factor_risk_99_03` (
`seq_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`a` varchar(32) DEFAULT NULL,
`b` varchar(32) DEFAULT NULL,
`c` varchar(32) DEFAULT NULL,
KEY a (a),
KEY bc (b,c),
KEY cb (c,b),
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

插入数据中a,b,c均为长度为30字节的随机字符串。

显然主键和其他索引应该分开统计。统计结果发现,主键page利用率71%,其他索引利用率约52%。

简单分析
上面的结果很好理解。因为按照主键递增顺序插入数据,因此主键上数据"紧凑"。 而其他三个索引,则都是随机更新,需要不停地作索引节点分裂。

如何提升磁盘空间利用率
回到最开始的问题。其实我们关心的,是InnoDB为了保存相同的数据,用了多少空间。所以我们的问题变成,存储相同的数据,如何让占用的磁盘空间更小。

有一个很直观的结论。把这些索引删了重建,必然会减少空间消耗。因为这个操作之后,在新的数据插入之前,这些索引也变成"紧凑的"。

再建了一个与cb相同的索引,再跑,利用率居然高达98%。这个原理大家应该都知道了,只是量化一下而已。
工具附后, 用法 ./ibd_used tb.ibd N1 N2 >/tmp/r 最后几行为各个索引的利用率统计值

感谢各位的阅读,以上就是"InnoDB磁盘空间利用率的查看方法"的内容了,经过本文的学习后,相信大家对InnoDB磁盘空间利用率的查看方法这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

利用率 空间 索引 磁盘 数据 方法 字节 统计 相同 工具 问题 学习 紧凑 内容 大小 实际 情况 结果 结论 分析 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 深圳市人人互联网科技有限公司 科技互联网龙头 科技企业和互联网企业 互联网与科技金融数据 汇久创客互联网科技 重庆科技学院互联网 开启互联网科技时代小说 中国的互联网科技企业的崛起 字节跳动和互联网科技 贵州叶脉互联网科技有限公司所属行业 武汉健翔互联网络科技有限公司 互联网科技公司有风险吗 崇明区互联网教育科技售后服务 山东子淼互联网科技有限公司 城市宝互联网科技有限公司 互联网相关科技技术 互联网科技包装股份有限公司上市 广州有谷有贝互联网科技有限公司 吉林省码上互联网科技电话 世界互联网科技成果奖 互联网科技巨头监管 科技互联网公司装修 互联网下的科技发展 互联网科技未来 以房互联网科技 安徽鑫晟辉互联网科技 丰台科技园 互联网 华服互联网科技官网 互联网媒体平台算高科技产业 互联网科技创业计划的风险分析
0