一.事務中的鎖
1.啥是鎖?
顧名思義,鎖就是鎖定的意思
2.鎖的作用是什么?
在事務ACID的過程中,‘鎖’和‘隔離級別’一起來實現‘I’隔離性的作用
3.鎖的種類
共享鎖:保證在多事務工作期間,數據查詢不會被阻塞。
排他鎖:保證在多事務工作期間,數據的一致性
上面兩實現隔離性
樂觀鎖
悲觀鎖
4.多版本并發控制(MVCC)
只阻塞修改類操作,不阻塞查詢類操作。樂觀鎖機制,誰先提交誰為準
5.鎖的粒度
MyIsam:低并發鎖(表級鎖)
Innodb:高并發鎖(行級鎖)
6.事務的隔離級別
a(?READ UNCOMMITTED(獨立提交)
允許事務查看其他事務所進行的未提交更改
b(?READ COMMITTED(處理臟讀 幻讀)
允許事務查看其他事務所進行的已提交更改
c(?REPEATABLE READ?(處理重復讀)
確保每個事務的 SELECT 輸出一致
d(?SERIALIZABLE
將一個事務的結果與其他事務完全隔離
7.查看事務隔離級別
mysql> show variables like '%iso%';
?
8.修改隔離級別
[mysqld]
transaction_isolation=read-uncommit