标签:临键锁(Next-Key Locks)

JAVA

为什么从Java15开始要禁用偏向锁了?

herman 2年前 (2022-08-31) 3253浏览

背景 为什么从Java15开始要禁用偏向锁了? 在 JDK1.5 之前,面对 Java 并发问题, synchronized 是一招鲜的解决方案: 普通同步方法,锁上当前实例对象静态同步方法,锁上当前类 Class 对象同步块,锁...

SQL

InnoDB 中 RR(Repeatable Read) 隔离级别下不存在幻读?

herman 4年前 (2020-03-26) 2926浏览

众所周知,MySQL 是国内使用最多的数据库,拥有众多的用户,但是各方面的相关文章,互相驳论!今天我们来说一说,InnoDB 中 RR(Repeatable Read) 隔离级别下到底存不存在幻读? 标准 SQL 在标准 SQL,标准情...

SQL

MySQL InnoDB 的加锁分析

herman 4年前 (2020-03-25) 2170浏览

前面写了一篇 MySQL 的 2PL 文章《8 张图,给你完整的剖析 MySQL 两阶段加锁(2PL)协议》,群里有人@我关于 MySQL 的加锁问题,事实上 MySQL 的加锁过程非常的复杂,2PL 只是一个最简单,最容易理解的一个!今天,再介绍...

SQL

重新设置 PostGresql 序列起始值

herman 4年前 (2020-02-12) 4028浏览

修改设置 Postgresql 序列值的场景并不多见,一般在不规范使用数据库的情况下存在! 有时候,数据库的序列错乱后,会发生 Detail: Key (xttblog_id)=(200007) already exists. 的错误提示。这...

SQL

MySQL 二级索引在 RR 和 RC 隔离级别下的加锁情况总结

herman 5年前 (2019-06-16) 3230浏览

二级索引又称为非唯一索引。那么针对非唯一索引,如果查询命中的是二级索引,那么在 RR 和 RC 级别下,又会加哪些锁呢?今天我们再来一起看看! 还是之前两篇文章中的测试数据,我直接粘贴过来! CREATE TABLE `xttblog`...

SQL

MySQL 主键索引在 RR 和 RC 隔离级别下的加锁情况总结

herman 5年前 (2019-06-16) 2675浏览

最近群里不少人讨论了一些高质量的问题。我今天抽时间给大家总结一个 MySQL InnoDB 存储引擎各种不同 SQL 情况下,加行锁、间隙锁、next-key lock 做一个总结。如果有错误的地方,请大家指正! MySQL的所有锁 为...

SQL

一个SQL让导致整个数据库都整挂了

herman 5年前 (2019-05-14) 2463浏览

在我们的电商系统中,需求非常多,永远做不完。同时一些也经常面临一些技术方面的问题,比如,这次一条 SQL 语句让整个数据库都挂了。 由于最近业绩爆发,系统中某张表由于设计不太合理,导致产生了大量的冗余数据。于是,经过一番讨论后,我们想把冗余数...

SQL

InnoDB 的 select 行锁还是表锁

herman 6年前 (2018-09-12) 6840浏览 0评论

前面有一篇文章说到了,InnoDB 的 select 查询会锁表,有的人不信。然而有的人学习能力很强,立马在官方网站上找到了,select 查询会锁表,就看你怎么使用,并不是说所有的 select 查询都会锁表。具体看你的事务隔离级别,和编写的查...