mysql优化笔记

mysql逻辑分层、存储引擎

                                    连接层       提供与客户端连接的服务                                               server(服务端)                                                              

client(客户端)          服务层       1.提供各种用户使用的接口(select ····)

                                                      2.提供sql优化器(mysql query optimizer)

                                    引擎层        提供了各种存储数据的方式(InnoDb  MyISAM)  show engine(显示引擎类型)

                                                                              两者的区别:InnoDb :事务优先,适合高并发操作,行锁

                                                                                                   MyISAM:性能优先,表锁

                                   存储层        存储数据

SQL优化

  原因:性能低、执行时间太长、等待时间太长、sql语句欠佳、索引失效、服务器参数设置不合理;

SQL语句:  编写过程:

                  select  distinct(去重复).....from ....join .....on.....where.......group by .....having .....order by ......limit ......

           解析过程:

             from  ...on.....join....where....group by .....having.....select  dinstinct ......order by .....limit......

                                                                                                                想要深入了解需要自己查询相关资料;

SQL优化: 主要就是在优化索引

            索引解释:就像我们查字典的目录一样;

            索引官方结束:index是帮助MYSQL高效获取数据的数据结构。索引是数据结构(树:B树、Hash树...)

索引的弊端:

  1. 索引本身很大,可以存放在内存/硬盘中,通常为硬盘;
  2. 索引不是所有情况均适用;  少量数据、频繁更新的字段、很少使用的字段
  3. 索引会降低增删改的效率;

索引的优势:

  1. 提高查询效率(降低IO使用率);
  2. 降低CPU使用率;

索引的分类:

  1. 单值索引:单列 比如   一个字段age    :一个表可以多个单值索引,name也可以;
  2. 唯一索引:不能重复的,比如id;
  3. 复合索引:多个列构成的索引        相当于二级目录;

                                                                        创建方式:   create  索引类型  索引名  on  表(字段)

explain

 emmm直接搜了一下别人的笔记好详细,附上链接

https://www.cnblogs.com/gdwkong/articles/8505125.html

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值