1. 悲觀鎖
概念:事務中的數據爲了防止出現髒讀和不可重複讀,把此數據行進行鎖住,即爲悲觀鎖。
2. 樂觀鎖
概念:不將數據行進行鎖住,比如update,根據update返回結果爲0或1,判斷是否修改成功
3. 死鎖
4. 間隙鎖
間隙鎖目的是爲了讓其他事務無法在間隙中新增數據,在RR模式的InnoDB中,間隙鎖能起到兩個作用:
1. 保障數據的恢復和複製
2. 防止幻讀
- 防止在間隙中執行insert語句
- 防止將已有數據update到間隙中
概念:事務中的數據爲了防止出現髒讀和不可重複讀,把此數據行進行鎖住,即爲悲觀鎖。
概念:不將數據行進行鎖住,比如update,根據update返回結果爲0或1,判斷是否修改成功
間隙鎖目的是爲了讓其他事務無法在間隙中新增數據,在RR模式的InnoDB中,間隙鎖能起到兩個作用:
1. 保障數據的恢復和複製
2. 防止幻讀