0
点赞
收藏
分享

微信扫一扫

mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器


文章目录

  • ​​执行计划解释​​
  • ​​索引类型​​
  • ​​普通索引​​
  • ​​唯一索引​​
  • ​​单列索引​​
  • ​​组合索引​​
  • ​​查看索引语句​​
  • ​​优化查询​​
  • ​​注意哪些情况索引不生效​​
  • ​​优化子查询​​
  • ​​优化数据结构​​
  • ​​将字段很多的表分解成多个表​​
  • ​​增加中间表​​
  • ​​增加冗余字段​​
  • ​​优化插入记录的速度​​
  • ​​分析表,检查表和优化表​​
  • ​​分析表​​
  • ​​检查表​​
  • ​​优化表​​
  • ​​优化mysql服务器​​
  • ​​优化服务器硬件​​
  • ​​优化mysql参数​​

执行计划解释

EXPLAIN
select id from test
where age=18 and EXISTS
(select name from test where name ='张三')

mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_索引


mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_sql_02

索引类型

普通索引

mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_索引_03

唯一索引

mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_sql_04

单列索引

mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_字段_05

组合索引

mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_mysql_06


注意,只支持,最左索引:

mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_mysql_07

查看索引语句

SHOW INDEX FROM

mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_索引_08


mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_sql_09

优化查询

注意哪些情况索引不生效

我们知道索引可以加快查询,但是有些情况索引不生效:

  • 1.like的查询语句

mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_数据库_10

  • 2.使用多列索引的查询
  • mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_数据库_11


  • mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_字段_12


  • mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_数据库_13

  • 3.使用or关键字的查询语句

mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_字段_14


mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_字段_15


mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_mysql_16

优化子查询

​为什么子查询效率低?​

mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_索引_17


如何优化子查询:

mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_字段_18

优化数据结构

将字段很多的表分解成多个表

mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_数据库_19


mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_数据库_20


mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_mysql_21


mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_索引_22


mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_字段_23

增加中间表

mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_索引_24


mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_索引_25


mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_索引_26

增加冗余字段

mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_sql_27


mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_sql_28

优化插入记录的速度

mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_字段_29


mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_数据库_30

分析表,检查表和优化表

分析表

mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_索引_31


mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_sql_32

检查表

mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_字段_33


mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_mysql_34

优化表

主要消除文件碎片

mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_mysql_35

优化mysql服务器

优化服务器硬件

mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_sql_36

优化mysql参数

mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_索引_37


mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_数据库_38


mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_sql_39


mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_sql_40


​实战案例​​:

mysq优化---mysql执行计划解释、优化查询、数据库结构、服务器_数据库_41

参考《MYSQL5.7入门到精通(刘增杰)》


举报

相关推荐

0 条评论