原文: https://blog.csdn.net/ufo___/article/details/81164996 MySQL系列-优化之覆盖索引:  https://blog.csdn.net/UFO___/article/details/81162087 索引效果比对:    https://blog.csdn.net/weixin_39800144/article/details/81510785 like关键字我们也是经常使用,用来模糊查询用户名,那么like如何进行优化呢?这篇博客就简…
mysql数据库优化课程---5.要索引和不要索引的区别是什么 一.总结 一句话总结: 索引速度快,就是查表的时候,操作的话设置索引就好了 1.数据库设计的时候不允许字段为null的好处是什么? null要占4-5个字段:单为空的时候,不允许为null的话要么为0要么为空字符串,占一个字段 而null要占4-5个字段,所以用null做划不来 2.为什么数据表的外键使用的很少? a.非常不灵活,当你想删某个字段的时候,会出现因为是外键删除报错很麻烦 b.外键的功能完全可以被连表所代替 c.和实际情…
b tree索引 myisam 是通过物理位置来查找引用行的 innodb 是通过主键来查找引用行的 索引优化策略 b-tree索引对数据长度有限制,所以text等比较长的列可以建立前缀索引 btree索引对键值的大小是有限制的 innodb 最大767字节,myisam 1000字节. 大字符串创建索引,不能 很好的提高效率.可以使用前缀索引 为什么选择联合索引 如果同时用到几个列作为查询条件,比每一个列建立单独的索引要快. 什么是覆盖索引 http://wzmtony.blog.163.co…
一.以下情况需要创建索引 1.主键自动建立唯一索引 2.频繁作为查询条件的字段应该创建索引 3.查询中与其他表关联的字段,外键关系建立索引 4.单键/组合索引的选择问题,组合索引性价比更高 5.查询中排序的字段,排序字段若通过索引去访问将大大提交排序速度 6.查询中排序或者分组字段 (分组会先进行排序再进行分组) 二.以下情况不要创建索引 1.表记录太少 2.经常增删改的表或者字段 3.Where条件里用不到的字段不创建索引 4.过滤性不好的不适合建索引…
执行GROUP BY子句的最一般的方法:先扫描整个表,然后创建一个新的临时表,表中每个组的所有行应为连续的,最后使用该临时表来找到组 并应用聚集函数.在某些情况中,MySQL通过访问索引就可以得到结果,此类查询的 EXPLAIN 输出显示 Extra 列的值为 Using index for group-by. 一.松散索引扫描 The most efficient way to process GROUP BY is when an index is used to directly retr…
索引的分类: 普通索引: 唯一索引: 主键索引:特殊的唯一索引,唯一且不能有null值: 全文索引:全文索引用来对表中的文本域(char, varchar, text)进行索引 全文索引针对myisam存储引擎 explain select * from articles where match(title,body) against('database'); [会使用全文索引] ================================================ 什么情况下使用索引…
一.优化概述 二.查询与索引优化分析 1性能瓶颈定位 Show命令 慢查询日志 explain分析查询 profiling分析查询 2索引及查询优化 三.配置优化 1)      max_connections 2)      back_log 3)      interactive_timeout 4)      key_buffer_size 5)      query_cache_size 6)      record_buffer_size 7)      read_rnd_buffer…
一. 优化概述 MySQL数据库是常见的两个瓶颈是CPU和I/O的瓶颈,CPU在饱和的时候一般发生在数据装入内存或从磁盘上读取数据时候.磁盘I/O瓶颈发生在装入数据远大于内存容量的时候,如果应用分布在网络上,那么查询量相当大的时候那么平瓶颈就会出现在网络上,我们可以用mpstat, iostat, sar和vmstat来查看系统的性能状态. 除了服务器硬件的性能瓶颈,对于MySQL系统本身,我们可以使用工具来优化数据库的性能,通常有三种:使用索引,使用EXPLAIN分析查询以及调整MySQL的内…
mysql性能优化-慢查询分析.优化索引和配置 (慢查询日志,explain,profile) 一.优化概述 二.查询与索引优化分析 1性能瓶颈定位 Show命令 慢查询日志 explain分析查询 profiling分析查询 2索引及查询优化 三.配置优化 1)      max_connections 2)      back_log 3)      interactive_timeout 4)      key_buffer_size 5)      query_cache_size 6)…
一.优化概述 二.查询与索引优化分析 1性能瓶颈定位 Show命令 慢查询日志 explain分析查询 profiling分析查询 2索引及查询优化 三.配置优化 1)      max_connections 2)      back_log 3)      interactive_timeout 4)      key_buffer_size 5)      query_cache_size 6)      record_buffer_size 7)      read_rnd_buffer…