码迷,mamicode.com
首页 > 数据库 > 详细

高性能mysql之慎用BLOB与TEXT

时间:2018-09-20 23:53:41      阅读:385      评论:0      收藏:0      [点我收藏+]

标签:font   种类   color   tab   区域   value   sub   ext   sort   

文章转自 https://blog.csdn.net/john1337/article/details/70919212

BLOB与TEXT是为了存储极大的字符串而设计的数据类型,采用二进制与字符串方式存储。mysql对待这两个类型可谓煞费苦心,mysql会把这两种类型的值当做一个独立的对象处理,存储引擎在存储时通常会做特殊处理,

当BLOB与TEXT的值太大时,InnoDB会使用专门的“外部”存储区域来进行存储,此时每个值在行内会采用1~4个自己存储指针,在外部存储区域存储实际值

Mysql对BLOB与TEXT类型进行排序的处理上与其他类型不同,只针对最前面的max_sort_length自己进行排序,如果只需要对前面的更少的字节进行排序,那么可以通过设置max_sort_length参数或者substring(value,length)来截取部分字符串。

在实际使用中应该慎用这两个类型,尤其是会创建临时表的情况下,因为如果临时表大小超过max_heap_table_size或者tmp_table_size,就会将临时表存储在磁盘上,进而导致整体速度下降!

高性能mysql之慎用BLOB与TEXT

标签:font   种类   color   tab   区域   value   sub   ext   sort   

原文地址:https://www.cnblogs.com/shuaiandjun/p/9684021.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!