簡體   English   中英

為什么我可以在innodb的一條記錄上擁有兩個鎖(X和S)? 我知道S和X鎖不能同時存在

[英]why i can have two locks( X and S) on one record in innodb? i know that S and X lock can not exists at the same time

輸入圖像描述

為什么我可以在innodb的一條記錄上擁有兩個鎖(X和S)? 我知道S和X鎖不能同時存在。

你不能 通過在同一事務中依次執行這兩個查詢,您的S鎖將升級為X鎖。 你們兩個都沒有。

如果第二個事務也獲得了相同記錄上的S鎖,然后運行了FOR UPDATE查詢,它將阻塞至少直到另一個事務進行下一步(可能更長),直到可能發生鎖升級或無法確定鎖為止。 。 最終,提示將返回,否則您將陷入僵局。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM