mysql 锁的慢日志

来源:这里教程网 时间:2026-03-01 16:15:10 作者:

自己原文公众号: https://mp.weixin.qq.com/s/0_Sl8ok8PFu2FrjLe3THkg 在以前发表公众号基础上继续完善一下mysql的dml和缓存的关系。(5.7)

第二张图也是以前的。一旦发生数据变化则没有缓存了,重新计算。那么翻过来也可以这样说,如果发生了重新计算,说明了数据一定有DML,也就是并发、或者非并发写。总之一定是写了。

今天说点不一样的。上次我这都是在一个会话下进行的。一次偶然想法,那么在其他会话中是不是一样缓存了呢?要知道在Oracle中 A用户执行select * from t(t是A的)和在B用户下执行select * from a.t这个是要硬解析,而且游标也不一样了。

来个实验。先是自己会话(ID号是65) 步骤是:

1读硬盘

2缓存到了

3更新数据

4无法缓存读硬盘

5缓存到了

 自己会话(ID号是67) 步骤是

1读硬盘

2缓存到了

3切换会话,而且是新的会话(因为有可能会说老的会话缓存了,看能不能是吧新的会话)

4不同会话缓存到了

再说一下锁。一定是多会话。 第二个会话被第一个阻塞了22秒

结论是会话67的执行时间不记录,只有会话69记录了被阻塞时间。

如果超时呢?

相关推荐