• 数据库设计-Mysql数据库表设计的过程中几个关键点


    一.表设计过程中应该注意的数据类型

    • 1)更小的通常更好 控制字节长度
    • 2)使用合适的数据类型: 如tinyint只占8个位,char(1024)与varchar(1024)的对比,char用于类似定长数据存储比varchar节省空间,如:uuid(32),可以用char(32).
    • 3)尽量避免NULL建议使用NOT NULL DEFAULT ''
    • 4)NULL的列会让索引统计和值比较都更复杂。可为NULL的列会占据更多的磁盘空间,在Mysql中也需要更多复杂的处理程

    二.索引设计过程中应该注意的点:

    • 1)选择唯一性索引 唯一性索引的值是唯一的,可以更快速的通过该索引来确定某条记录,保证物理上面唯一
    • 2)为经常需要排序、分组和联合操作的字段建立索引 ,经常需要ORDER BY、GROUP BY、DISTINCT和UNION等操作的字段,排序操作会浪费很多时间
    • 3)常作为查询条件的字段建立索引 如果某个字段经常用来做查询条件,那么该字段的查询速度会影响整个表的查询速
    • 4)数据少的地方不必建立索引:例如gender性别字段,仅有男女2中数据, 如果在这个字段建立索引,缺点:1.索引占用内存,2.索引性能差

    三.关于SQL的执行计划

      使用explain关键字可以分析SQL的执行计划

      下面是对比图:

    数据少的字段建立索引

      建立索引前

      建议索引后(性能提升较少)

     

    数据多的字段建立索引

      建立索引前

       建立索引后

      

  • 相关阅读:
    初探linux子系统集之led子系统(一)
    金融大数据分析从认知到实践(第1辑)(套装共3册)
    Blender权威指南
    零基础学Python
    中文版Photoshop CC图像处理与设计
    21天学通C++(第4版)
    Python应用开发实战
    电脑办公实战从入门到精通(超值版)
    Windows 10从新手到高手
    21天学通C语言(第7版)
  • 原文地址:https://www.cnblogs.com/july-sunny/p/11690731.html
Copyright © 2020-2023  润新知