MYSQL BLOB 字段大小以及个数的限制測试。
測试结论
mysql版本号 5.1
表类型: innodb, row_format=compact (这是默认的行格式)
插入超过10个blob, blob的数据量非常小(<768字节), 插入成功。
插入超过10个blob, blob的数据量非常大(>768字节), 插入失败:报 Got error 139 from storage engine。
注意,假设mysqlserver版本号是5.1, innodb_file_format选项不存在, 也就无从谈起Barracuda格式。 设置row_format=dynamic也是没意义的。
mysql版本号 5.5
表类型: innodb, row_format=compact (这是默认的行格式)
插入超过10个blob, blob的数据量非常大(>768字节), 插入失败:报 Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
表类型: innodb, row_format=dynamic (这是innodb的新文件存储格式Barracuda所支持的行格式)
插入超过10个blob, blob的数据量非常大(>768字节), 插入成功
备注:
1) 实际測试測试我用的每一个字段长度都是100K+
2) 对于mysql5.5, 尽管支持Barracuda。可是默认使用的还是老的格式:Antelope
除非在mysql的配置里面my.cnf改动:
innodb_file_per_table = 1
innodb_file_format = Barracuda
或者set global 命令动态的改动:
SET GLOBAL innodb_file_format=barracuda;
SET GLOBAL innodb_file_per_table=1;
注意:
1) 改动后的innodb_file_format格式, 仅仅影响兴许创建的表。 也就是兴许创建的表,能够支持把row_format设为dynamic
2) SET GLOBAL 仅仅是在mysqlserver执行期间有效,重新启动后innodb_file_format还原为原来的格式。
3) 推断一个表是否支持超过10个blob的字段的简单办法:
show table status like 't1' \G
查看 Row_format , 假设是Compact, 必然不支持, 假设是dynamic, 则支持。
MYSQL BLOB 字段大小以及个数的限制測试。的更多相关文章
- C#读取Mysql blob字段 (转帖)
http://blog.csdn.net/config_man/article/details/6123191 开发环境:Windows XP Professional SP3.VS2008.Winf ...
- 基于MySQL元数据的Hive的安装和简单測试
引言: Hive是一种强大的数据仓库查询语言,类似SQL,本文将介绍怎样搭建Hive的开发測试环境. 1. 什么是Hive? hive是基于Hadoop的一个数据仓库工具,能够将结构化的数据文件映射为 ...
- SpringMVC处理MySQL BLOB字段的下载
任务: uos.docfile的content字段是longblob类型,通过Web点击链接能下载到存储在这个字段里的文件.Web点击链接类似如下形式: http://localhost:8080/d ...
- SpringMVC处理MYSQL BLOB字段的上传
任务: uos.docfile的content字段是longblob类型的,通过页面将文件存储到这个字段里. 页面代码: <div class="box"> <d ...
- mysql BLOB字段转String的方法
1.通过sql直接转换 select CONVERT(GROUP_CONCAT(XXX) USING utf8 from usertable; 2.通过程序转换(注:本例用的是springmvc包装并 ...
- mysql创建、删除用户与授权(linux測试)
注:我的执行环境是SUSE Linux + mysql5.6 一.创建用户: 命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password'; ...
- MVC jsp+servlet+javabean 连接Mysql数据库測试demo
本文介绍的是怎样使用MVC架构去实现jsp+servlet+javabean连接数据库 首先我们应该了解什么是MVC: MVC包含三个部分 : ①View:由各种JSP页面组成. ②Controlle ...
- 什么是blob,mysql blob大小配置介绍
什么是blob,mysql blob大小配置介绍 作者: 字体:[增加 减小] 类型:转载 BLOB (binary large object),二进制大对象,是一个可以存储二进制文件的容器.在计 ...
- MySQL中TEXT与BLOB字段类型的区别
这篇文章主要介绍了MySQL中TEXT与BLOB字段类型的区别,本文总结了6大区别,需要的朋友可以参考下 在MySQL中有两个字段类型容易让人感觉混淆,那就是TEXT与BLOB,特别是自己写博客程 ...
随机推荐
- How does it work in C#? - Part 3 (C# LINQ in detail)
http://www.codeproject.com/Articles/383749/How-does-it-work-in-Csharp-Part-Csharp-LINQ-in-d
- Azure 负载平衡器新分发模式
Yves Pitsch Azure 网络首席项目经理 Azure负载平衡器是一种第四层(TCP.UDP)类型的负载平衡器,它可以将传入流量分发到云服务中正常运行的服务实例上,或者分发到负载平衡器集内所 ...
- apache开源项目--HBase
HBase – Hadoop Database,是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群. HBase是Goog ...
- MyEclipse/Eclipse导入sun.misc.BASE64Encoder jar包步骤
1.右键项目 -->Properties -->Java Bulid Path-> Libraries -->JRE System Library-->Access ru ...
- 先前设定的sa密码忘记了,如何修改sa密码?
在window身份验证登陆后,新建查询,输入以下代码就可以修改sa密码了: use master go exec sp_password null,'123456','sa' go
- 2014 多校联合训练赛6 Fighting the Landlords
本场比赛的三个水题之一,题意是两个玩家每人都持有一手牌,问第一个玩家是否有一种出牌方法使得在第一回和对方无牌可出.直接模拟即可,注意一次出完的情况,一开始没主意,wa了一发. #include< ...
- 十款PHP开发框架对比
PHP开发框架近来在PHP社区中成为讨论的热点,几乎每天都在推出新的框架.面对市面上超过四十种的开发框架,你很难判断究竟哪一款最适合你,尤其是在这些框架所提供的功能不尽相同的时候. 本文将引导你 ...
- DNS(三)DNS SEC(域名系统安全扩展)
工作需要今天了解了下DNS SEC,现把相关内容整理如下: 一.DNS SEC 简介 域名系统安全扩展(英语:Domain Name System Security Extensions,缩写为DNS ...
- bzoj 2244 [SDOI2011]拦截导弹(DP+CDQ分治+BIT)
[题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=2244 [题意] 给定n个二元组,求出最长不上升子序列和各颗导弹被拦截的概率. [思路] ...
- 【暑假】[实用数据结构]UVAlive 3942 Remember the Word
UVAlive 3942 Remember the Word 题目: Remember the Word Time Limit: 3000MS Memory Limit: Unknown ...