01 MySQL锁概述
生活随笔
收集整理的這篇文章主要介紹了
01 MySQL锁概述
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
鎖是計算機協調多個進程或線程并發訪問某一資源的機制。在數據庫中,除傳統的計算資源(如CPU、RAM、I/O 等)的爭用以外,數據也是一種供許多用戶共享的資源。如何保證數據并發訪問的一致性、有效性是所有數據庫必須解決的一個問題,鎖沖突也是影響數據庫并發訪 問性能的一個重要因素。從這個角度來說,鎖對數據庫而言顯得尤其重要,也更加復雜。本章我們著重討論MySQL鎖機制的特點,常見的鎖問題,以及解決 MySQL鎖問題的一些方法或建議。 MySQL鎖概述 相對其他數據庫而言,MySQL的鎖機制比較簡單,其最顯著的特點是不同的存儲引擎支持不同的鎖機制。比 如,MyISAM和MEMORY存儲引擎采用的是表級鎖(table-level locking);BDB存儲引擎采用的是頁面鎖(page-level locking),但也支持表級鎖;InnoDB存儲引擎既支持行級鎖(row-level locking),也支持表級鎖,但默認情況下是采用行級鎖。 MySQL這3種鎖的特性可大致歸納如下。
- 表級鎖:開銷小,加鎖快;不會出現死鎖;鎖定粒度大,發生鎖沖突的概率最高,并發度最低。
- 行級鎖:開銷大,加鎖慢;會出現死鎖;鎖定粒度最小,發生鎖沖突的概率最低,并發度也最高。
- 頁面鎖:開銷和加鎖時間界于表鎖和行鎖之間;會出現死鎖;鎖定粒度界于表鎖和行鎖之間,并發度一般。
轉載于:https://www.cnblogs.com/Alight/p/3941282.html
總結
以上是生活随笔為你收集整理的01 MySQL锁概述的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [转]F# Samples 101 -
- 下一篇: Mac OS Mountain Lion