mysql text blob_mysql的text/blob和行溢出
blob存储二进制,text存储文本,前者可当做大个的varbinary,而后者可看成升级版的varchar(与long varchar等价);
两者都有4种子类型:tiny,normal(默认),medium和long,区别就在可存储的数据长度不一样;
而int更是有5个子类型:tiny(1字节),small(2字节),medium(3字节),normal(默认,4字节),big(8字节);
注:timestamp4字节,datatime8字节,date和time3字节;enum占用1-2个字节(最大存储65535个字段);
限制
1 创建索引时必须指定前缀;
2 不能指定default value;
3 使用临时表时必须为磁盘表,memory引擎不支持这两种字段;
4 只有前max_sort_length(默认1024)字节可参与排序;
行溢出
innodb采用B+树结构,每个数据页至少要存储两个记录(否则变成了链表),如果不能满足这个需求,则会出现行溢出,innodb只保留字段前20字节
(pre-plugin保留768字节),剩余数据分配新的数据页uncompress blob page;
行溢出只与记录长度有关系,即便行包含blob或text,若一个数据页可存储两条记录,也不会出现行溢出;
具体可参看《MySQL技术内幕-InnoDB存储引擎的》的4.4章节 innodb行记录格式;
对于pre-plugin,行溢出时保留每个字段的前768字节,如果保留的字节总数仍然超出数据页的一半大小,就会直接报错1030- Got error 139 from storage engine。譬如一个表建立11个text或varachar(1000)字段且行记录长度>8k,则会产生行溢出,保留在原数据页的记录长度=11*768>8k,此时不能再继续行溢出了,因此只能报错。
mysql text blob_mysql的text/blob和行溢出相关推荐
- 【MySQL经典案例分析】关于数据行溢出由浅至深的探讨
本文由云+社区发表 一.从常见的报错说起 故事的开头我们先来看一个常见的sql报错信息: 相信对于这类报错大家一定遇到过很多次了,特别对于OMG这种已内容生产为主要工作核心的BG,在内容线的存 ...
- mysql中blob_MySQL中的BLOB类型
一.概念: BLOB (binary large object)二进制大对象,是一个可以存储二进制文件的容器. 在计算机中,BLOB常常是数据库中用来存储二进制文件的字段类型. BLOB是一个大文件, ...
- mysql中char,varchar,text
1.char char最大长度是255字符,注意是字符数和字符集没关系. 1)可以有默认值, 2)尾部有空格会被截断 3)不管汉字.英文,还是其他编码,都可以存255字符 2.varchar 1)va ...
- mysql中char和text的区别_mysql中text与varchar与char的区别
char类型 CHAR列的长度固定为创建表时声明的长度.长度可以为从0到255的任何值.当保存CHAR值时,在它们的右边填充空格以达到指定的长度.当检索到CHAR值时,尾部的空格被删除掉.在存储或检索 ...
- MYSQL中varchar和TEXT
起因 引发原因:门店需求新增自提门店,自提门店需要加自提点图片,在渠道店上引入了图片地址img_url 的字段,字段值定义为text not null 但是因为text字段不能设置默认值,所以未设置默 ...
- MySQL数据库字段类型 text 超长报错问题解决方案
把 字段类型 改为 longtext 即可,因为: 1.text字段类型:text字段类型的字节限制为65535字节. 2.longtext字段类型:longtext字段类型的字节限制为2147483 ...
- mysql groupby 拼接_mysql分组并多行拼接--group_concat和groupby的使用
mysql分组并多行拼接--group_concat和groupby的使用 – 创建表结构 DROP TABLE IF EXISTS exe; CREATE TABLE exe ( id int(3) ...
- mysql影响行数解析_详解MySQL的数据行和行溢出机制
一.行 有哪些格式? 你可以像下面这样看一下你的mysql行格式设置. 其实mysql的数据行有两种格式,一种就是图中的 compact格式,还有一种是redundant格式. compact是一种紧 ...
- MySQL的基本知识点,一千行命令概括
原文地址:shockerli.net/post/1000-l- ,JavaGuide 对本文进行了简答排版,新增了目录. 作者:格物 非常不错的总结,强烈建议保存下来,需要的时候看一看. 基本操作 数 ...
最新文章
- poj 3007 Organize Your Train part II (哈希)
- ASP.NET Web API 基本操作(CRUD)
- 访问数组元素进行赋值
- win8.1 USB启动盘制作(不支持UEFI,不支持GPT分区)
- 重定向 12 21 解析
- nginx服务器开启缓存、反向代理
- 面向对象写选项卡、拖拽
- [html] 说说js代码写到html里还是单独写到js文件里哪个好?为什么?
- PyTorch 1.0 中文官方教程:聊天机器人教程
- python 调用mysql存储过程返回结果集
- oracle数据库sql查询,oracle数据库中常用经典SQL查询
- 百度内容审查做敏感词库筛选
- 判断题 错与对的 t、f 是什么意思
- 大数据在人力资源管理当中的应用
- 整理学习之深度迁移学习
- vue切换路由不重新渲染_Vue来回切换页面不重新加载 --keep-alive
- java-php-python-springboot志愿者服务平台计算机毕业设计
- 史上非常简单、快速的解决Excel导出遇到Excel导出错误
- CC2530芯片资料
- 模拟退火的一些个人见解
热门文章
- 调用Com+时提示找不到文件
- 应用程序通用开发框架
- 用DELPHI的RTTI实现对象的XML持久化 【转】
- Grub4Dos 安装Ubuntu 收藏
- pip install -r requirement.txt 后 提示No such file or directory: ‘requirements.txt‘
- 递归1:二叉搜索树的范围和
- 常用的开源视音频解码软件库
- Ubuntu系统rm命令删除文件没有提示,怎么办?
- @EnableDiscoveryClient
- 数据结构:平衡二叉树概念、旋转