我首先开启了一个事务查询并加排他锁
然后试了下另外一个查同样id 的事务是成功的
但是仅单条或者不commit就是锁等待
不是应该只要是查询同一条数据有排他锁就会死锁嘛
我首先开启了一个事务查询并加排他锁
然后试了下另外一个查同样id 的事务是成功的
但是仅单条或者不commit就是锁等待
不是应该只要是查询同一条数据有排他锁就会死锁嘛
5 回答3.2k 阅读✓ 已解决
3 回答3.6k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
5 回答1.4k 阅读
3 回答1.2k 阅读✓ 已解决
2 回答2k 阅读
3 回答2k 阅读
死锁是两个事务或多个事务在同一资源上相互占用,并请求锁定对方占用的资源。
你这里仅仅是一个事务占用了另一个事务的资源,没有实现双方互相占用,这不会产生死锁。
你可以这样试一下。
两个事务都执行第一条update语句,当再都执行第二条update时,双方都在等待对方释放锁资源,才能update数据行,由此就会产生死锁。