zoukankan      html  css  js  c++  java
  • MySQL优化

    1.建立索引

      (1)合理的索引能够加速数据读取效率,不合理的索引反而会拖慢响应速度;

      (2)索引越多,更新数据的速度越慢

      (3)尽量在MyIsam作为引擎的时候使用索引

      (4)可在条件语句上建立索引,where,order by

    2.大量数据查询时存储引擎使用MyISAM

      MyISAM与InnoDB的区别

      MyISAM:高性能读取,适合大量数据查询;适合做很多count的计算;表级锁,开销小;不支持事务;不支持外键

      InnoDB:适用于高并发的频繁修改表;支持事务;行级锁,消耗大;不适合建索引;支持外键

    3.SQL优化

      (1)减少查询字段,避免select * ,需要什么字段查询什么字段;

      (2)一次性对同一个表插入多条数据,可以拼接,效率更高 insert into persona(name,age) values ('aa','12'),('dd','22'),('ww','32');

    4.合理的字段类型

      (1)避免使用NULL类型,应使用NOT NULL或者特殊字符(0,1)作为默认值

      (2)尽可能使用更小的字段,MySQL从磁盘读取数据后会存储到内存中,数据类型越小占用的空间越小

      (3)优先使用定长型

    5.避免在索引字段上进行运算

      尽量避免在WHERE子句中对字段进行函数或表达式操作,如:select * from T1 where F1/2 = 100 应该为 select * from T1 where F1 = 100*2

    6.尽量使用数字型字段

    7.能够使用between就不要用in

    8.能够使用distinct就不要用group by

    ——现在的努力,只为小时候吹过的牛逼! ——
  • 相关阅读:
    【crontab】误删crontab及其恢复
    New Concept English there (7)
    New Concept English there (6)
    New Concept English there (5)
    New Concept English there (4)
    New Concept English there (3)
    New Concept English there (2)Typing speed exercise
    New Concept English there (1)Typing speed exercise
    New Concept English Two 34 game over
    New Concept English Two 33 94
  • 原文地址:https://www.cnblogs.com/zxf100/p/14468879.html
Copyright © 2011-2022 走看看