• 一些Mysql的优化经验


     源头:网易学院  




        一些 Mysql 的优化经验

        1. 从数据库机关做起1. 字段典范模范的界说时遵循以下正直:1. 选用字段长度最小2. 优先运用定长型3. 尽能够的界说 "NOT NULL" 4. 数值型字段中避免运用 "ZEROFILL" 5. 如果要储存的数据为字符串, 且能够值已知且有限, 优先运用 enum 或 set 2. 索引的优化至关严厉(以下如果没有稀奇分析, 均指查问辘集的环境)

        1. 被索引的字段的长度越小, 该索引的功用越高2. 被索引的字段中, 值的反复越少, 该索引的功用越高3. 查问语句中, 如果运用了 "group" 子句, 根据其中字段呈现的先后按次建立多字段索引4. 查问语句中, 如果运用了 "distinct", 根据其中字段呈现的先后按次建立多字段索引5. "where" 子句中, 呈现对统一表中多个分歧字段的 "and" 前提时, 根据字段呈现的先后按次建立多字段索引6. "where" 子句中, 呈现对统一表中多个分歧字段的 "or" 前提时, 对反复值最少的字段建立单字段索引7. 制止 "内/外跟尾" 查问时, 对 "跟尾字段" 建立索引8. 对 "主键" 的 "unique" 索引 毫偶尔义, 不要运用9. 被索引字段尽能够的运用 "NOT NULL" 属性10. 对写入辘集型表, 只管增加索引, 尤其是 "多字段索引" 和 "unique" 索引2. 查问语句的优化1. 多多运用 "explain" 查问索引运用环境, 以便找出最佳的查问语句写法和索引设置方案2. 慎用 "select *", 查问时只选出必须字段3. 查问运用索引时, 所遍历的索引条数越少, 索引字段长度越小, 查问功用越高 (可运用 "explain" 查问索引运用环境)

        4. 避免运用 mysql 函数对查问下场制止处理, 将这些处理交给客户端按次卖力5. 运用 "limit" 时分, 只管使 "limit" 出的局部位于整个下场集的前部, 这样的查问速度更快, 系统资源开支更低6. 在 "where" 子句中运用多个字段的 "and" 前提时, 各个字段呈现的先后递主要与多字段索引中的按次合适7. 在 "where" 子句 中运用 "like" 时, 只需当通配符不出现在前提的最左端时才会运用索引8. 在 mysql 4.1 以上版本中, 避免运用子查问, 只管运用 "内/外跟尾" 完成此功用9. 增加函数的运用, 如果能够的话, 只管用纯真的表达式来庖代10. 避免在 "where" 子句中, 对分歧字段制止 "or" 前提查问, 将其拆分红多个单一字段的查问语句功用更高。

    附: Mysql 字段长度分析表
    Mysql 字段长度分析
    TINYINT 1 字节 SMALLINT 2 字节
    MEDIUMINT 3 字节 INTEGER: 4 字节
    BIGINT 8 字节 DOUBLE 8 字节
    FLOAT(X) X <=24: 4 字节
    X > 24: 8 字节 DECIMAL(M,D) M<D: D 2 字节
    M>=D: M 字节
    DATE 3 字节 DATETIME 8 字节
    TIMESTAMP 4 字节 TIME 4 字节
    YEAR 1 字节    
    CHAR(M) M 字节 VARCHAR(M) 值长度 1 字节
    TINYBLOB 值长度 1 字节 TINYTEXT 值长度 1 字节
    BLOB 值长度 2 字节 TEXT 值长度 2 字节
    MEDIUMBLOB 值长度 3 字节 MEDIUMTEXT 值长度 3 字节
    LONGBLOB 值长度 4 字节 LONGTEXT 值长度 4 字节
    ENUM 1 或 2 字节
    取决于枚举值数 SET 1,2,3,4, 8
    取决于成员数目




    版权声明: 原创作品,答应转载,转载时请务必以超链接体例标明文章 原始来因 、作者信息和本声明。否则将清查执法责任。

  • 相关阅读:
    matlab从ECG信号数据趋势项的消除
    matlab使用移动平均滤波器、重采样和Hampel过滤器进行信号平滑处理
    R语言如何做马尔科夫转换模型markov switching model
    python主题建模可视化LDA和T-SNE交互式可视化
    R语言Wald检验 vs 似然比检验
    R语言rjags使用随机效应进行臭氧数据分析
    matlab对MCMC贝叶斯方法用于加筋复合板的冲击载荷识别
    4. 纯 CSS 创作一个金属光泽 3D 按钮特效
    3.纯 CSS 创作一个容器厚条纹边框特效
    2.纯 CSS 创作一个矩形旋转 loader 特效
  • 原文地址:https://www.cnblogs.com/zgqjymx/p/1975812.html
Copyright © 2020-2023  润新知