MySQL
文章平均质量分 92
mysql 相关教程
fanghailiang2016
善战者无赫赫之功
展开
-
理解 MySQL join 语句的执行过程
不论是在原表上加索引,还是用有索引的临时表,我们的思路都是让 join 语句能够用上被驱动表上的索引,来触发 BKA 算法,提升查询性能。原创 2024-03-15 23:40:49 · 1580 阅读 · 0 评论 -
MySQL order by 语句执行流程
MySQL order by 可以使用 全字段排序 和 rowid 排序,order by 的执行成本比较高原创 2024-03-14 23:42:22 · 790 阅读 · 0 评论 -
MySQL删除数据 文件大小不变的原因以及处理空洞问题
如果要收缩一个表,只是 delete 掉表里面不用的数据的话,表文件的大小是不会变的,需要通过 alter table 命令重建表,才能达到表文件变小的目的。Online DDL 的方式可以考虑在业务低峰期使用原创 2024-03-14 22:50:46 · 356 阅读 · 0 评论 -
一条 sql 语句可能导致的表锁和行锁以及死锁检测
锁MDL当对一个表做增删改查操作的时候,加 MDL 读锁;当要对表做结构变更操作的时候,加 MDL 写锁行锁两阶段锁协议死锁和死锁检测。原创 2024-03-12 22:54:43 · 1142 阅读 · 2 评论 -
InnoDB索引优化
MySQL 的覆盖索引、最左前缀原则和索引下推优化原创 2024-03-12 22:03:43 · 569 阅读 · 0 评论 -
MySQL 事务的原理以及长事务的预防和处置
事务在实现上,数据库里面会创建一个视图,访问的时候以视图的逻辑结果为准。在“可重复读”隔离级别下,这个视图是在事务启动时创建的,整个事务存在期间都用这个视图。在“读提交”隔离级别下,这个视图是在每个 SQL 语句开始执行的时候创建的。原创 2024-03-11 22:35:21 · 533 阅读 · 0 评论 -
一条 SQL 更新语句如何执行的
Server 层存储引擎层总流程查询语句连接器查询缓存分析器优化器执行器更新语句redo log(节省的是随机写磁盘的 IO 消耗(转成顺序写))InnoDB 引擎物理日志循环写binlogserver层逻辑日志追加写入两阶段提交为了知道,mysql 中一条 sql 语句是如何执行的,先讲一下 mysql 的宏观分层以及如何执行查询语句.MySQL 宏观上分为Server 层和。原创 2024-03-11 22:04:11 · 1058 阅读 · 0 评论