1.创建索引并发
(1)合理的索引可以加速数据读取效率,不合理的索引反而会拖慢响应速度;函数
(2)索引越多,更新数据的速度越慢高并发
(3)尽可能在MyIsam做为引擎的时候使用索引性能
(4)可在条件语句上创建索引,where,order by优化
2.大量数据查询时存储引擎使用MyISAM索引
MyISAM与InnoDB的区别事务
MyISAM:高性能读取,适合大量数据查询;适合作不少count的计算;表级锁,开销小;不支持事务;不支持外键内存
InnoDB:适用于高并发的频繁修改表;支持事务;行级锁,消耗大;不适合建索引;支持外键效率
3.SQL优化select
(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