![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MySql优化
文章平均质量分 78
详细介绍了MySql的优化
努力的小强
这个作者很懒,什么都没留下…
展开
-
MySQL数据库调优————数据库调优维度及测试数据准备
sql调优原创 2023-02-12 22:19:52 · 683 阅读 · 0 评论 -
MySQL数据库调优————慢查询日志的开启与分析
慢查询日志开启与分析原创 2023-02-13 13:50:54 · 342 阅读 · 0 评论 -
MySQL数据库调优————EXPLAIN详解
EXPLAIN原创 2023-02-13 21:16:59 · 342 阅读 · 0 评论 -
MySQL数据库调优————OPTIMIZER_TRACE详解
OPTIMIZER_TRACE原创 2023-02-14 22:47:24 · 1616 阅读 · 0 评论 -
MySQL数据库调优————GROUP BY及DISTINCT优化
然后将person[i]的进行计算得到最小的salary,再计算person[i+1]的最小salary,但是索引是有序的,查询出来的语句已经是先按person排序,再按salary排序,也就是说每个person的第一个salary就是最小的,中间的扫描所有每个person的salary并计算最小值的过程是可以省略的直接取每个person的第一个salary即可,这就是松散索引扫描,无需扫描所有的满足条件的索引。一旦使用了临时表,在Extra中将会出现Using temporary。原创 2023-02-19 22:58:37 · 1023 阅读 · 0 评论 -
MySQL数据库调优————索引数据结构
比如我们要查找上述B-tree中的索引值为26的数据。那么首先在跟根节点中的关键字依次比较,发现15原创 2023-02-16 12:44:09 · 367 阅读 · 0 评论 -
MySQL数据库调优————创建索引的原则和索引失效及解决方案
从expain执行结果可以看到并未用到索引,解决方案,事先在代码中计算好表达式的值,再传入SQL中,应该避免在SQL语句的where条件子句等号左侧做计算。这种情况不做演示,解决方案很简单,在建表时把索引字段设置为NOT NULL,根据官方建议,甚至可以把所有的字段都设置成NOT NULL并为字段赋默认值。当联表查询时,如果作为联接条件的两个字段的类型不一致,则会进行隐式转换,也会导致索引失效,所以在创建表时要进行充分的考虑,使两个字段的类型保持一致。解决方案,分别为条件中的字段创建索引。原创 2023-02-16 21:46:51 · 973 阅读 · 0 评论 -
MySQL数据库调优————索引调优技巧
当某张表需要给一个长字段创建索引时,因为索引长度越长,效率越差,所以我们需要对其进行优化。原创 2023-02-17 19:29:24 · 700 阅读 · 0 评论 -
MySQL数据库调优————表结构设计优化
适当增加冗余,从而提升查询效率。原创 2023-02-19 23:09:37 · 407 阅读 · 0 评论 -
MySQL数据库调优————JOIN优化
在一次范围查询中,如果未使用主键索引,那么查询到的数据集在查找是可能会伴随大量的随机IO,因为我们的数据是按照主键索引进行排列的;我们知道,非主键索引存储的是主键而不是具体的数据,MRR会在查询到数据集后,根据主键进行一次排序,然后再根据排序后的主键顺序去查找数据,从而将随机IO转换为了顺序IO。MRR的核心就是:将随机IO转换成顺序IO,从而提升性能。原创 2023-02-17 22:14:47 · 1603 阅读 · 0 评论 -
MySQL数据库调优————ORDER BY语句
这句SQL是用到了索引排序的,当执行查询时,查找出来的数据为[‘Bader’,last_name[i],emp_no],因为索引是有序的,'Bader’是确定的,那么数据已经按照last_name排好序了,就跳过了排序的环节。根据执行结果是使用了索引的,因为在执行查询语句时,查找出来的数据为[first_name,last_name,emp_no],这一部分数据已经是按照first_name排好序的,所以不需要再次进行排序了。因为索引中的两个字段,在进行排序中的升降序不一致,所以无法使用索引。原创 2023-02-19 21:52:34 · 565 阅读 · 0 评论 -
MySQL数据库调优————分页查询优化
MySQL分页查询语句当offset较小时,性能尚可,但当offset较大时,查询效率就有点儿拉跨了。原创 2023-02-18 21:25:12 · 325 阅读 · 0 评论 -
MySQL数据库调优————Percona Toolkit使用
DSN使用key=value的形式配置;多个DSN使用逗号分割。原创 2023-02-20 23:32:00 · 235 阅读 · 0 评论 -
MySQL数据库优化————COUNT优化
直接进入主题。原创 2023-02-18 22:46:33 · 5562 阅读 · 1 评论 -
MySQL数据库————MVCC
现在有两个事务在操作table表,事务B修改了id=2的name字段为李老四,但是没有提交,事务A查询id=2的数据,得到name为李老四;事务B发生回滚,id=2的数据的name又变回李四,这时候事务A得到的name的值还是李老四,也就是说事务A读取到了别的事务未提交的数据,这就是脏读。原创 2023-02-21 22:36:49 · 692 阅读 · 0 评论 -
MySQL数据库调优————SQL性能分析
SQL性能分析原创 2023-02-14 13:39:01 · 678 阅读 · 0 评论 -
MySQL数据库调优————索引类型
唯一索引就是在普通索引的基础上增加了数据唯一性的约束,索引列的值必须唯一,允许有NULL值。如果一个唯一索引同时还是个组合索引,那么表示列值的组合必须唯一。在一张数据表里可以有多个唯一索引。聚簇索引的叶子节点就是数据节点,而非聚簇索引的叶子节点不存储数据,而是指向对应数据块的指针。主键索引是一种特殊的唯一索引,不允许有NULL值,并且一张表最多只有一个主键索引。InnoDB的主键索引使用的就是聚簇索引,而MyISAM使用了非聚簇索引。普通索引时基础的索引,没有任何约束,主要用于提高查询效率。原创 2023-02-15 23:22:02 · 107 阅读 · 0 评论 -
MySQL数据库优化————Percona Toolkit安装
【代码】MySQL数据库优化————Percona Toolkit安装。原创 2023-02-20 12:40:12 · 303 阅读 · 0 评论