随笔分类 -  搞懂Mysql

摘要:间隙锁加锁分析 以下案例均基于以下表及数据 CREATE TABLE `t` ( `id` int(11) NOT NULL, `c` int(11) DEFAULT NULL, `d` int(11) DEFAULT NULL, PRIMARY KEY (`id`), KEY `c` (`c`) 阅读全文
posted @ 2021-04-08 10:03 肆玖爺 阅读(158) 评论(0) 推荐(0)
摘要:可见性分析 CREATE TABLE `t` ( `id` int(11) NOT NULL, `k` int(11) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB; insert into t(id, k) values(1,1),(2,2); 阅读全文
posted @ 2021-04-07 15:52 肆玖爺 阅读(359) 评论(0) 推荐(0)
摘要:Index Nested-Loop Join(NLJ) 从驱动表上逐行读取数据,在被驱动表上通过索引匹配数据,假设驱动表N表数据,被驱动表M条数据 Index Nested-Loop Join Batched Key Access(BKA,NLJ算法的优化) NLJ算法,每条数据都需要被驱动表两个索 阅读全文
posted @ 2021-04-06 17:01 肆玖爺 阅读(159) 评论(0) 推荐(0)
摘要:全局锁 全局锁就是对整个数据库实例加锁。MySQL 提供了一个加全局读锁的方法FTWRL Flush tables with read lock 全局锁的典型使用场景是,做全库逻辑备份,也就是把整库每个表都 select 出来存成文本。在备份过程中整个库完全处于只读状态,存在以下问题: 如果你在主库 阅读全文
posted @ 2021-03-30 15:18 肆玖爺 阅读(247) 评论(0) 推荐(0)
摘要:索引模型 哈希表 适用于只有等值查询的场景,Memory引擎默认索引 InnoDB支持自适应哈希索引,不可干预,由引擎自行决定是否创建 有序数组:在等值查询和范围查询场景中的性能都非常优秀,但插入和删除数据需要进行数据移动,成本太高。因此,只适用于静态存储引擎 二叉平衡树:每个节点的左儿子小于父节点 阅读全文
posted @ 2021-03-26 15:24 肆玖爺 阅读(742) 评论(0) 推荐(0)
摘要:什么是buffer pool? 缓冲池,缓存表数据与索引数据,把磁盘上的数据加载到缓冲池,避免每次访问都进行磁盘IO,起到加速访问的作用。 磁盘是按页读取,一次至少读取一页数据(一般是4K)。数据访问通常都遵循“集中读写”的原则,使用一些数据,大概率会使用附近的数据,这就是所谓的“局部性原理”,它表 阅读全文
posted @ 2021-03-18 11:21 肆玖爺 阅读(330) 评论(0) 推荐(0)
摘要:InnoDB 里面每个事务有一个唯一的事务 ID,叫作 transaction id。它是在事务开始的时候向 InnoDB 的事务系统申请的,是按申请顺序严格递增的。 每行数据有多个版本,每次事务更新数据的时候,都会生成一个新的数据版本,并且把 transaction id 赋值给这个数据版本的事务 阅读全文
posted @ 2021-03-18 11:18 肆玖爺 阅读(123) 评论(0) 推荐(0)
摘要:WAL 了解MySQL日志前,先要了解WAL(Write-Ahead Loggin),即预写式日志,其关键点在于先写日志再写磁盘。 在对数据页进行修改时, 通过将"修改了什么"这个操作记录在日志中, 而不必马上将更改内容刷新到磁盘上, 从而将随机写转换为顺序写, 提高了性能。 binlog 归档日志 阅读全文
posted @ 2021-03-18 11:00 肆玖爺 阅读(136) 评论(0) 推荐(0)
摘要:隔离级别 SQL 标准的事务隔离级别包括: 读未提交(read uncommitted):一个事务还没提交时,它做的变更就能被别的事务看到 读提交(read committed):一个事务提交之后,它做的变更才会被其他事务看到 可重复读(repeatable read):一个事务执行过程中看到的数据 阅读全文
posted @ 2021-03-18 10:54 肆玖爺 阅读(108) 评论(0) 推荐(0)
摘要:基本架构 连接器 职责 建立连接 获取权限 维护和管理连接 注意事项 一个用户成功建立连接后,即使你用管理员账号对这个用户的权限做了修改,也不会影响已经存在连接的权限。修改完成后,只有再新建的连接才会使用新的权限设置 客户端如果太长时间没动静,连接器就会自动将它断开。这个时间是由参数 wait_ti 阅读全文
posted @ 2021-03-18 10:53 肆玖爺 阅读(82) 评论(0) 推荐(0)