![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
mysql
文章平均质量分 64
第三次文艺复兴
coding 永无止境
展开
-
MySQL 索引的区分度之性能分析
对于选择性不高的列甚至可以不创建索引。如果选择性不高,极端性情况下可能会扫描全部或者大多数索引,然后再回表,这个过程可能不如直接走主键索引性能高。索引列的选择往往需要根据具体的业务场景来选择;但是需要注意的是索引的区分度越高则价值就越高,意味着对于检索的性价比就高。索引的区分度等于count(distinct 具体的列) / count(*),表示字段不重复的比例。唯一键的区分度是1,而对于一些状态值,性别等字段区分度往往比较低,在数据量比较大的情况下,甚至有无限接近0。...原创 2021-07-23 14:29:23 · 5623 阅读 · 0 评论 -
遇见MySQL 主从原理及问题的小tips
前言:今天单就MySQL方案说下架构优化,当然支撑高并发仅仅靠MySQL是不可行的,目前我司用的是 MySQL+Nginx+redis+rabitMQ+elasticsearch+mongoDB来支撑高并发;根据业务场景组合拳吧,下面进入正题........原创 2021-02-27 14:02:56 · 2368 阅读 · 11 评论 -
sql 中count 在innodb 和myisam 表类型的查询快慢
在sql中经常会用到count(*) 或者不常用的count(‘列’),在innodb和myisam 的查询速度有多大,原理又是什么?下面我们首先唠唠myisam和innodb主要区别1).MyISAM是非事务安全型的,而InnoDB是事务安全型的。2).MyISAM锁的粒度是表级,而InnoDB支持行级锁定。3).MyISAM支持全文类型索引,而InnoDB不支持全文索引。4).My...原创 2018-09-30 13:15:05 · 1398 阅读 · 1 评论 -
理解sql查询执行先后顺序
假设所有条件都存在,那么我们来看下执行先后顺序FORM: 对FROM的左边的表和右边的表计算笛卡尔积。产生虚表VT1ON: 对虚表VT1进行ON筛选,记录在虚表VT2中。JOIN: 如果指定了OUTER JOIN(比如left join、 right join),那么保留表中未匹配的行就会作为外部行添加到虚拟表VT2中,产生虚拟表VT3, rug from子句中包含两个以上的表的话,那么就...转载 2018-09-30 14:05:37 · 758 阅读 · 0 评论