Mysql笔记
文章平均质量分 86
记录mysql学习笔记,备忘。
Guanam_
风生雨起无人问,奈何花落却天晴。
展开
-
Mysql的Redo log和Bin log
由操作系统(当然,MySQL也可以主动flush)将OS cache里的数据,最终fsync到磁盘上;原创 2023-05-15 21:19:44 · 442 阅读 · 0 评论 -
Mysql慢查询性能优化实战
MySQL 并不是跳过 offset 行,而是取 offset+N 行,然后返回放弃前 offset 行,返回 N 行, 那当 offset 特别大的时候,效率就非常的低下,要么控制返回的总页数,要么对超过特定阈值的页 数进行 SQL 改写。在 MyISAM 引擎 中,每个表的总行数都会在内存和磁盘文件中进行保存,当执行 count(*) 语句的时候,会直接将内存中保存的数值返回,所以执行非常快。count(字段):只包含列名的列,统计表中出现该字段的次数,并且不统计字段为null的情况;原创 2023-05-15 21:17:06 · 183 阅读 · 0 评论 -
Mysql查询性能优化
MySQL 并不是跳过 offset 行,而是取 offset+N 行,然后返回放弃前 offset 行,返回 N 行, 那当 offset 特别大的时候,效率就非常的低下,要么控制返回的总页数,要么对超过特定阈值的页 数进行 SQL 改写。在 MyISAM 引擎 中,每个表的总行数都会在内存和磁盘文件中进行保存,当执行 count(*) 语句的时候,会直接将内存中保存的数值返回,所以执行非常快。count(字段):只包含列名的列,统计表中出现该字段的次数,并且不统计字段为null的情况;原创 2023-05-07 19:09:37 · 69 阅读 · 0 评论 -
Mysql锁机制总结
按锁的粒度可以分为。按锁的属性可以分为。原创 2023-05-07 19:10:06 · 43 阅读 · 0 评论 -
Mysql语句执行流程
然后拿到记录,把 level 改为 5,然后调用引擎 API 接口,写入这一行数据,InnoDB 引擎把数据保存在内存中,同时记录 redo log,此时 redo log 进入 prepare 状态,然后告诉执行器,执行完成了,随时可以提交。分析器 —> 优化器 —> 权限校验 —> 执行器 —> 引擎 —> redo log(prepare) —> binlog —> redo log(commit)执行器会以行为粒度,调用存储引擎执行SQL,在没有索引的情况下,执行器会循环查询所有行。原创 2023-05-07 19:19:28 · 52 阅读 · 0 评论