1. 程式人生 > >MySQL資料庫下 delete from x where id=?會發生什麼鎖

MySQL資料庫下 delete from x where id=?會發生什麼鎖

首先 分析一下子。

主要圍繞tx_isolation=rc 和 rr,engine=innodb來展開。

sql很簡單,會施加什麼鎖,取決於: 1. tx_isolation: 這裡假定是rr吧,rc沒有gap鎖,沒那麼複雜
2. id是否為主鍵,unique key,non unique key,no key 如果是主鍵,easy,如你們所說,行鎖,x 如果是uk,兩個x鎖 二級key鎖+主鍵鎖 non uk,二級key的gap鎖+主鍵x鎖 no key,全主鍵x鎖

好了 這也是大牛的見解。我也只是記錄一下子。