MySQL是一款廣受歡迎的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),自MySQL 5.5版本開始,引入了行級鎖的概念,其設(shè)計初衷是為了提高數(shù)據(jù)庫的并發(fā)性能,降低數(shù)據(jù)庫的鎖等待時間。
為什么需要引入行級鎖呢?
MySQL默認采用的是表級鎖,也就是在整個表達到一定的并發(fā)級別后,就會將整張表格鎖住,因此如果多個用戶同時訪問一張表,就極有可能造成長時間的等待與死鎖。
采用行級鎖,可以將鎖定的粒度變得更加細致,同一時間內(nèi),可以允許多個用戶在同一個表里訪問不同的行,而不互相影響。這樣,就能夠極大地提高了數(shù)據(jù)庫的并發(fā)性能,并減少了鎖等待的時間。
但是引入行級鎖,并不意味著表級鎖就完全失去了作用。在MySQL中,表可以根據(jù)需要選擇兩種不同的鎖級別:表級鎖和行級鎖。而且,在某些場景下,表級鎖甚至比行級鎖更加適合。因此,在設(shè)計數(shù)據(jù)庫時,需要根據(jù)實際情況,合理地選擇鎖級別。
上一篇mysql圖標未顯示出來
下一篇mysql圖片上傳