close

MariaDB從Mysql演變而來,

在Lock的使用上也是相同的.

一般常用的Data Engine有InnoDB, MyISAM.

 

MyISAM => 使用Table lock作為預設的鎖範圍.

InnoDB   => 在明確指出Primary Key值時,使用Row lock作為鎖定範圍,其他其況使用Table lock.

簡單說,在where col = '明確值'時會使用row lock.

另外,select ... for update僅適用begin/commit/rollback且是InnoDB Data Engine

 

參考
[MySQL] SELECT … FOR UPDATE 的 Row Lock 與 Table Lock

MySQL鎖表(Lock Table)Table-level與Row-level比較 
MySQL 交易功能 Transaction 整理 (較深入)

arrow
arrow
    文章標籤
    table-lock row-lock
    全站熱搜

    abcg5 發表在 痞客邦 留言(0) 人氣()