数据库优化

1、数据库字段宽度尽量选小,尽量设计为not null。

2、使用join代替子查询,join尽量用小表连大表。

3、建立索引,最好不超过6个,否则insert 和 update 会影响性能。

  1、不要在存在大量重复值的列上建索引。

      2、尽量不要在where 中对字段进行null判断,引擎会放弃使用索引而进行全表扫描。

  3、避免查询时对有索引的字段进行操作,如 where unm + 1 = 2。

4、查询语句的优化

  1、最好在相同类型的字段间进行比较。

  2、在有索引的字段上尽量不使用函数。

  3、尽量避免使用 != 和 <>。

  4、尽量避免使用or连接,如一个字段有索引一个字段没有,会导致放弃使用索引。

  5、尽量少使用in和not in,可使用between或者exists。

 

explain和desc

主要使用:

type:

  好到差

  NULL>system>const>eq_ref>ref>range>index>All 

  最后到达ref,否则需要优化sql。

possible_keys:mysql试用哪个索引进行查询。

key:查询用到的索引。

posted @ 2018-04-06 22:27  hy_ag  阅读(160)  评论(0编辑  收藏  举报