随笔分类 -  MySQL学习

摘要:一条update的执行流程 执行流程分为在server层和存储引擎层;server是MySQL都有的,其日志文件是binlog;存储引擎是不同的,undolog,redolog是innodb特有的。 首先是客户端创建请求,然后去服务层请求; 然后是server的连接器,连接器的作用是校验用户是否有权 阅读全文
posted @ 2024-04-30 15:48 圣辉 阅读(8) 评论(0) 推荐(0) 编辑
摘要:学习来源-图灵课堂 https://vip.tulingxueyuan.cn 锁学习参考: https://juejin.cn/post/7307889500545253395 锁机制 为了保证数据的一致性,当访问共享变量的时候我们可以针对共享数据加锁,但是加锁要时要注意加锁的成本,还有加锁的粒度, 阅读全文
posted @ 2024-04-29 19:11 圣辉 阅读(34) 评论(0) 推荐(0) 编辑
摘要:学习来源-图灵课堂 https://vip.tulingxueyuan.cn 说到MySQL的innodb的一大特性,就不得不说到事务。今天就学习事务。 事务 事务的定义:逻辑上的一组操作,要么一起成功,要么一起失败,中间绝对不会存在别的状态。逻辑上的一组操作,就是说这些操作都是有逻辑关系的。 我们 阅读全文
posted @ 2024-04-28 23:29 圣辉 阅读(63) 评论(0) 推荐(0) 编辑
摘要:学习来源:图灵课堂 https://vip.tulingxueyuan.cn 分页优化 一般来说,我们的后台管理系统都是有翻页功能的,并且有时候还要加上一些筛选过滤条件;如果对查询没有经过特别的优化,那么就会发现翻页越往后就越慢,这是为什么呢? 因为如果单独是使用limit,例如limit 9000 阅读全文
posted @ 2024-04-28 16:34 圣辉 阅读(7) 评论(0) 推荐(0) 编辑
摘要:针对联合索引来说,如果第一列就是用范围查询,例如大于小于这些,就会认为查询的行很多,如果不是覆盖索引,那么就不再使用这个二级索引,认为使用二级索引还要频繁的去回表查询等等,消耗更大,所以就会去全表扫描。 但是可以使用force index(索引名称)去强制使用指定的索引,但是一般不建议这么做;要相信 阅读全文
posted @ 2024-04-27 23:04 圣辉 阅读(23) 评论(0) 推荐(0) 编辑
摘要:from之后的查询得到的表叫做衍生表,是临时表数据,生成临时表之后的数据是无法使用索引的,如果数据量大查询效率就会比较低,这就是查询要尽量少使用子查询这些临时表。 explain详解 id: 表示查询序号,也可以表示优先级;当值都不一样的时候,值越大表示优先级越高,越先执行;当值都一样的时候,按照从 阅读全文
posted @ 2024-04-27 14:35 圣辉 阅读(21) 评论(0) 推荐(0) 编辑
摘要:1、索引数据结构红黑树,Hash,B+树详解 2、千万级数据表如何用B+树索引快速查找 3、聚集索引&聚簇索引&稀疏索引到底是什么 4、为什么DBA总推荐使用自增主键做索引 5、联合索引底层数据结构又是怎样的 6、Mysql最左前缀优化原则是怎么回事? MySQL5.5版本之后默认的就是innodb 阅读全文
posted @ 2024-04-27 10:25 圣辉 阅读(157) 评论(0) 推荐(0) 编辑