• Mysql BLOB、BLOB与TEXT区别及性能影响、将BLOB类型转换成VARCHAR类型


    在排查公司项目业务逻辑的时候,见到了陌生的字眼,如下图

    顺着关键字BLOB搜索,原来是Mysql存储的一种类型,从很多文章下了解到如下信息

    了解

    MySQL中,BLOB字段用于存储二进制数据,是一个可以存储大量数据的容器,它能容纳不同大小的数据。

    MySQL的四种BLOB类型

    1. 类型                     大小(单位:字节)
    2. TinyBlob                   最大 255
    3. Blob                         最大 65K
    4. MediumBlob            最大 16M
    5. LongBlob                 最大 4G

    BLOB与TEXT的区别

    一般在保存少量字符串的时候,我们会选择CHAR或者VARCHAR,而在保存较大文本时,通常会选择使用TEXT或者BLOB。二者之间的主要差别是BLOB能用来保存二进制数据,比如照片;而TEXT只能保存字符数据,比如一遍文章或日记。TEXT和BLOB中又分别包括TEXT,MEDIUMTEXT,LONGTEXT和BLOB,MEDIUMBLOB,LONGBLOB三种不同的类型,他们之间的主要区别是存储文本长度不用和存储字节不用,用户应该根据实际情况选择能够满足需求的最小存储类型。

    BLOB和TEXT值会引起一些性能问题,特别是执行了大量的删除操作时。
    删除操作会在数据库表中留下很大的“空洞”,以后要填入这些“空洞”的记录在插入的性能上会有影响。为了提高性能,建议定期使用OPTIMEIZE TABLE功能对这类表进行碎片整理,避免因为“空洞”导致性能问题。 

    详细说明:https://blog.csdn.net/weixin_36910300/article/details/79104536

    性能影响:https://blog.csdn.net/zhao_6666/article/details/79132285

    将BLOB转化为VARCHAR

    select CAST(content AS CHAR(10000) CHARACTER SET utf8) from t_bonus_code_log

    https://blog.csdn.net/qjc_501165091/article/details/51226018   原生的写入与读取

  • 相关阅读:
    fastjson(转)
    FastJson
    FastJson处理Map List 对象
    spring-data-redis RedisTemplate操作
    Spring-data-redis:特性与实例(转载)
    Spring Boot 支持多种外部配置方式
    springBoot----@ConditionalOnxxx相关注解总结
    Centos7 install Openstack
    Centos7 install Openstack
    Centos7 Openstack
  • 原文地址:https://www.cnblogs.com/wt645631686/p/10102509.html
Copyright © 2020-2023  润新知