mysql X鎖和S鎖基本的封鎖類型有兩種:
排它鎖(X鎖)和共享鎖(S鎖):
所謂X鎖,是事務(wù)T對(duì)數(shù)據(jù)A加上X鎖時(shí),只允許事務(wù)T讀取和修改數(shù)據(jù)A
-
所謂S鎖,是事務(wù)T對(duì)數(shù)據(jù)A加上S鎖時(shí),其他事務(wù)只能再對(duì)數(shù)據(jù)A加S鎖,而不能加X鎖,直到T釋放A上的S鎖
若事務(wù)T對(duì)數(shù)據(jù)對(duì)象A加了S鎖,則T就可以對(duì)A進(jìn)行讀取,但不能進(jìn)行更新(S鎖因此又稱為讀鎖),在T釋放A上的S鎖以前,其他事務(wù)可以再對(duì)A加S鎖,但不能加X鎖,從而可以讀取A,但不能更新A.
http://www.cnblogs.com/digdeep/archive/2015/11/16/4968453.html
學(xué)習(xí)了mysql加鎖機(jī)制蚜迅,RC滓侍,RR,與字段的索引還有關(guān)系湾宙,如何防止死鎖,不同情況的加鎖悄晃。
-
學(xué)習(xí)where條件的過濾
給定一條SQL凤价,如何提取其中的where條件?where條件中的每個(gè)子條件酗捌,在SQL執(zhí)行的過程中有分別起著什么樣的作用呢诬?
Index Key 索引查找,第一遍找出最小值胖缤,隨后需要逐個(gè)比較是否滿足最大值的條件尚镰,得到最大值。
Index First Key --- Index Last Key
Index Filter 索引過濾哪廓,對(duì)于索引查找出的值狗唉,均需要與索引過濾條件對(duì)比
Table Filter 對(duì)于沒有命中索引的字段,需要回表查出完整記錄涡真,對(duì)其進(jìn)行過濾