欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MYSQL 解鎖與鎖表介紹

 更新時(shí)間:2017年04月06日 22:59:15   投稿:mdxy-dxy  
相對其他數(shù)據(jù)庫而言,MySQL的鎖機(jī)制比較簡單,其最顯著的特點(diǎn)是不同的存儲(chǔ)引擎支持不同的鎖機(jī)制

MySQL鎖概述
 
相對其他數(shù)據(jù)庫而言,MySQL的鎖機(jī)制比較簡單,其最顯著的特點(diǎn)是不同的存儲(chǔ)引擎支持不同的鎖機(jī)制。比如,MyISAM和MEMORY存儲(chǔ)引擎采用的是表級鎖(table-level locking);BDB存儲(chǔ)引擎采用的是頁面鎖(page-level locking),但也支持表級鎖;InnoDB存儲(chǔ)引擎既支持行級鎖(row-level locking),也支持表級鎖,但默認(rèn)情況下是采用行級鎖。
 
MySQL這3種鎖的特性可大致歸納如下。
 
開銷、加鎖速度、死鎖、粒度、并發(fā)性能
 
l         表級鎖:開銷小,加鎖快;不會(huì)出現(xiàn)死鎖;鎖定粒度大,發(fā)生鎖沖突的概率最高,并發(fā)度最低。
l         行級鎖:開銷大,加鎖慢;會(huì)出現(xiàn)死鎖;鎖定粒度最小,發(fā)生鎖沖突的概率最低,并發(fā)度也最高。
l         頁面鎖:開銷和加鎖時(shí)間界于表鎖和行鎖之間;會(huì)出現(xiàn)死鎖;鎖定粒度界于表鎖和行鎖之間,并發(fā)度一般。
 
MyISAM表鎖

MyISAM存儲(chǔ)引擎只支持表鎖,這也是MySQL開始幾個(gè)版本中唯一支持的鎖類型。隨著應(yīng)用對事務(wù)完整性和并發(fā)性要求的不斷提高,MySQL才開始開發(fā)基于事務(wù)的存儲(chǔ)引擎,后來慢慢出現(xiàn)了支持頁鎖的BDB存儲(chǔ)引擎和支持行鎖的InnoDB存儲(chǔ)引擎(實(shí)際 InnoDB是單獨(dú)的一個(gè)公司,現(xiàn)在已經(jīng)被Oracle公司收購)。但是MyISAM的表鎖依然是使用最為廣泛的鎖類型。本節(jié)將詳細(xì)介紹MyISAM表鎖的使用。
查詢表級鎖爭用情況

可以通過檢查table_locks_waited和table_locks_immediate狀態(tài)變量來分析系統(tǒng)上的表鎖定爭奪:
mysql> show status like 'table%';
+-----------------------+-------+
| Variable_name         | Value |
+-----------------------+-------+
| Table_locks_immediate | 2979  |
| Table_locks_waited    | 0     |
+-----------------------+-------+
2 rows in set (0.00 sec))
如果Table_locks_waited的值比較高,則說明存在著較嚴(yán)重的表級鎖爭用情況。
 
獲取InnoDB行鎖爭用情況   

可以通過檢查InnoDB_row_lock狀態(tài)變量來分析系統(tǒng)上的行鎖的爭奪情況:
mysql> show status like 'innodb_row_lock%';
+-------------------------------+-------+
| Variable_name                 | Value |
+-------------------------------+-------+
| InnoDB_row_lock_current_waits | 0     |
| InnoDB_row_lock_time          | 0     |
| InnoDB_row_lock_time_avg      | 0     |
| InnoDB_row_lock_time_max      | 0     |
| InnoDB_row_lock_waits         | 0     |
+-------------------------------+-------+
5 rows in set (0.01 sec)
如果發(fā)現(xiàn)鎖爭用比較嚴(yán)重,如InnoDB_row_lock_waits和InnoDB_row_lock_time_avg的值比較高,還可以通過
 

解鎖

第一種

show processlist;

找到鎖進(jìn)程,kill id ;

第二種

mysql>UNLOCK TABLES;

鎖表

鎖定數(shù)據(jù)表,避免在備份過程中,表被更新

mysql>LOCK TABLES tbl_name READ;

為表增加一個(gè)寫鎖定:

mysql>LOCK TABLES tbl_name WRITE;

相關(guān)文章

  • mysql中insert與select的嵌套使用方法

    mysql中insert與select的嵌套使用方法

    這篇文章主要介紹了mysql中insert與select的嵌套使用方法,代碼功能非常實(shí)用,需要的朋友可以參考下
    2014-07-07
  • MySQL Workbench導(dǎo)入excel數(shù)據(jù)的實(shí)現(xiàn)示例

    MySQL Workbench導(dǎo)入excel數(shù)據(jù)的實(shí)現(xiàn)示例

    本文主要介紹了MySQL Workbench導(dǎo)入excel數(shù)據(jù)的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • Can’t open file:''[Table]mytable.MYI''

    Can’t open file:''[Table]mytable.MYI''

    也許很多人遇到過類似Can’t open file: ‘[Table]mytable.MYI’ 這樣的錯(cuò)誤信息,卻不知道怎么解決他,下面我們做個(gè)介紹,
    2011-01-01
  • DBeaver連接mysql數(shù)據(jù)庫圖文教程(超詳細(xì))

    DBeaver連接mysql數(shù)據(jù)庫圖文教程(超詳細(xì))

    本文主要介紹了DBeaver連接mysql數(shù)據(jù)庫圖文教程,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • mysql 5.7.15 安裝配置方法圖文教程

    mysql 5.7.15 安裝配置方法圖文教程

    這篇文章主要為大家分享了mysql 5.7.15安裝配置方法圖文教程,感興趣的朋友可以參考一下
    2016-09-09
  • mysql存儲(chǔ)過程中使用游標(biāo)的實(shí)例

    mysql存儲(chǔ)過程中使用游標(biāo)的實(shí)例

    使用MYSQL存儲(chǔ)過程,可以實(shí)現(xiàn)諸多的功能,下面將為您介紹一個(gè)MYSQL存儲(chǔ)過程中使用游標(biāo)的實(shí)例
    2014-01-01
  • MySQL 數(shù)據(jù)類型和建庫策略

    MySQL 數(shù)據(jù)類型和建庫策略

    無論是在小得可憐的免費(fèi)數(shù)據(jù)庫空間或是大型電子商務(wù)網(wǎng)站,合理的設(shè)計(jì)表結(jié)構(gòu)、充分利用空間是十分必要的。這就要求我們對數(shù)據(jù)庫系統(tǒng)的常用數(shù)據(jù)類型有充分的認(rèn)識(shí)。
    2008-12-12
  • Mysql時(shí)區(qū)的幾種問題及解決方法

    Mysql時(shí)區(qū)的幾種問題及解決方法

    在使用MySQL時(shí),時(shí)區(qū)設(shè)置容易引發(fā)一些錯(cuò)誤,本文將介紹MySQL時(shí)區(qū)問題可能引發(fā)的錯(cuò)誤,并提供一些解決方案,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-07-07
  • Mac下忘記Mysql的root用戶密碼的解決方法

    Mac下忘記Mysql的root用戶密碼的解決方法

    mac中安裝MySQL時(shí)系統(tǒng)會(huì)自動(dòng)為root 賬戶生成一個(gè)密碼(改密碼一般為一個(gè)不好記的字符串),若自己沒有記住改密碼,這時(shí) mysql 就無法進(jìn)入了。解決方案是修改root 賬戶的密碼,問題是mysql進(jìn)不去如何修改,下面就是改問題的解決方法:
    2017-03-03
  • MySQL兩個(gè)字段模糊匹配操作方案

    MySQL兩個(gè)字段模糊匹配操作方案

    這篇文章主要給大家介紹了關(guān)于MySQL兩個(gè)字段模糊匹配操作的相關(guān)資料,兩張MySQL表進(jìn)行模糊匹配可以使用like語法來實(shí)現(xiàn),文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-09-09

最新評論