前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >mysql优化笔记

mysql优化笔记

作者头像
meihuasheng
发布2021-03-16 21:03:23
发布2021-03-16 21:03:23
4070
举报
文章被收录于专栏:phpcodersphpcoders

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

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/07/03 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档