Mysql行格式DYNAMIC和COMPACT区别

news/2025/2/25 10:47:04/文章来源:https://www.cnblogs.com/qz85784989/p/18735721

MySQL的InnoDB存储引擎支持多种行格式,其中DYNAMIC和COMPACT是两种常见的行格式,它们各自有着不同的特性和应用场景。下面将详细对比这两种行格式的主要区别,以便于在设计数据库时做出合适的选择。

COMPACT行格式

COMPACT是MySQL 5.0之后引入的一种行记录存储方式,旨在提高数据页的利用率,使每个数据页能够存储更多的行记录。COMPACT格式的特点包括:

  1. 变长字段处理:对于VARCHAR、VARBINARY、BLOB等变长字段,COMPACT格式会在记录的真实数据部分存储实际长度和值。对于BLOB字段,如果数据超过768字节,超出部分会被存储到溢出页,记录中只保留20字节的指针指向溢出页。
  2. 固定长度字段优化:对于CHAR类型的字段,COMPACT格式会保留其声明的固定长度,即使实际存储的数据小于声明长度。
  3. 记录头部:COMPACT格式的记录头部包含了一些额外的信息,如记录的状态位、下一个记录的偏移量等,这有助于快速遍历记录和管理记录状态。

DYNAMIC行格式

从MySQL 5.7版本开始,DYNAMIC成为默认的行格式,它基于COMPACT格式进行了改进,主要区别在于处理大字段的方式:

  1. BLOB字段处理优化:与COMPACT格式相比,DYNAMIC行格式对于BLOB字段采取了更为激进的策略,无论BLOB字段的值大小如何,都只会直接在记录中存储一个20字节的指针指向溢出页,而不会在记录中保留任何实际数据。这种处理方式使得单个记录占用的空间更少,从而在数据页中可以存放更多的记录。
  2. 提高存储效率:由于DYNAMIC行格式对大字段的这种处理方式,它在存储大量含有大文本或二进制数据的表时,能更高效地利用存储空间,减少碎片化,尤其是在更新频繁导致行记录变长时。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/889462.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微信的内置浏览器有何特殊之处

前言 刚开始用博客园不久,我就注意到,博客园在微信中样式不正常。(应该是博客园的决策) 浏览器? 微信的内置浏览器明显是与众不同的,或者说,存在某种环境注入。无法使用下载功能,当你在任何网站中点击下载按钮时,他都会跳出请打开浏览器进行下载之类的字样。 UA有所不…

No.3 HTML5--标题标签

一、标题介绍与应用<h1>一级标题</h1><h2>二级标题</h2><h3>三级标题</h3><h4>四级标题</h4><h5>五级标题</h5><h6>六级标题</h6> 快捷键:h$*6 回车,自动生成h1-h6 的标签 二、VSCode插件 快速打…

冰霜

S1毕业装--属性 爆击>精通>急速>全能 爆击和精通越高越好。急速随缘。不要全能。 --团本/单体天赋(更新时间2月4日)--团本/单体天赋代码 CsPAAAAAAAAAAAAAAAAAAAAAAMGAzMjZMGDzYmZmZmxMmJzYMjBMzYMjZmZmZmZxMAAAAAAAAAAAAjltBGwCYZYCMWwMMmBA --大秘/AOE天赋(更新时间…

这些扩展能让 Chrome 原有功能更强!

Chrome 是很好用,但还不够好用,特别是它自带的一些功能,所以扩展集市里有一堆针对原有功能的增强。Chrome 是很好用,但还不够好用,特别是它自带的一些功能,所以扩展集市里有一堆针对原有功能的增强。 例如:标签页相关:双击关闭,双栏,侧边栏,自动冻结,收纳,预览,拖…

扩展推荐篇 - 让你的浏览器更漂亮!

作为一个颜控,首先推荐的就是能美化浏览器的扩展 🙃。作为一个颜控,首先推荐的就是能美化浏览器的扩展 🙃。 ‍ 自定义主题 Chrome 自带不少对外观的设置: ​ ‍ 但这些其实挺单调的,能调整的样式很少。 我们可以打开应用商店,打开主题专栏,能看到不少好看的主题: ​…

AI 赋能指标管理分析,开启企业数智领航时代

以下为本次分享的回顾: 在大数据时代,企业数字化转型的核心目标在于让数据发挥真正的价值。从数据报表到分析平台,再到日常取数,企业所依赖的不仅仅是数据本身,而是通过数据所呈现出对业务的分析、业务的查看以及业务未来趋势的洞察。再多数据只有同业务相结合转化为信息,…

传统企业可观测建设之路

本文来自腾讯蓝鲸智云社区用户: CanWay数字化转型与可观测的关系 在数字化转型的浪潮中,我们面临着将“线下业务线上化”及实现“业务快速创新迭代”的迫切需求,这也进而要求支撑业务的应用系统更加敏捷、可扩展性更高。 因而,分布式、云原生是企业应用架构的发展方向。分布…

从混乱到有序:板栗看板如何成为物流管理的得力助手

利用板栗看板优化物流管理,可以通过其可视化的任务管理、团队协作和实时跟踪功能,提升物流效率、减少错误并增强团队协作。以下是具体的优化方法和步骤:明确物流管理流程 在开始使用板栗看板之前,先梳理企业的物流管理流程,明确各个环节(如订单接收、库存管理、运输调度、…

鲜血

S1毕业装--属性 急速>全能>精通>爆击 急速,全能和精通的收益非常接近。爆击随缘 --团本天赋--团本天赋代码 CoPAtbMOTHlnKIwUyAn+DK70SjhBzYMjZGjlZMzMTzMGmZMjBAAAAAzMzMzMzMzmZmxAAAgZmZmBAAAYgBmxoxyGIbDYDgZwG --大秘天赋--大秘天赋代码 CoPAtbMOTHlnKIwUyAn+DK7…

软件测试工作全解析——流程、方法与避坑指南

引言 软件测试是保障产品质量的核心环节,但许多团队仍深陷认知误区和低效流程。本文以工程化视角拆解测试全流程,结合实用工具与经典案例,助你构建系统化测试思维。一、软件测试全流程标准化(5W2H模型) 1. 测试计划方案(Why & How)战略定位:明确测试在项目生命周期…

红色五角星1

from turtle import * fillcolor("red") begin_fill() while True: forward(200) right(144) if abs(pos())<1: break end_fill()

解锁 Hertz 路由:构建高效 API 的魔法钥匙

路由注册 Hertz 提供了 GET、POST、PUT、DELETE、ANY 等方法用于注册路由。方法 介绍Hertz.GET 用于注册 HTTP Method 为 GET 的方法Hertz.POST 用于注册 HTTP Method 为 POST 的方法Hertz.DELETE 用于注册 HTTP Method 为 DELETE 的方法Hertz.PUT 用于注册 HTTP Method 为 PUT…