数据库

Mysql优化

2019-01-10  本文已影响8人  任嘉平生愿

MySQL 执行计划

主要就是关注字段    key      type    Extra

key  null         没有用索引可以建索引优化

type ALL        为全表扫描可以优化 达到range就差不多了

Extra 有         Using filesort ,Using temporary

可以读出来用java排序 in会破坏索引,在查询的过程中使用临时表

设计表字段

设计字段的时候按照字段大小优先

int > date > String

2       4         8 

建立索引

索引左前缀原则

复合索引 覆盖索引

少用in,和sleect *

like前面不写%

不在索引列上做任何操作如sum(),max()

范围条件放最后

字符类型加引号

OR改UNION效率高

慢查询

开启慢查询                        mysql>setglobal slow_query_log='ON';

设置log保存路径                mysql>setglobal slow_query_log_file='/usr/local/mysql/data/slow.log'

设置最小时间                     mysql>setglobal long_query_time=1;   //记录大于1S

pt-query-digest

慢查询日志分析工具之pt-query-digest - 醉梦一生 - 博客园

MySQL慢查询(一) - 开启慢查询 - 鲁玉成 - 博客园

MySQL高级 之 explain执行计划详解 - wuseyukui的专栏 - CSDN博客

上一篇下一篇

猜你喜欢

热点阅读