2018-03-11- MySql 锁

MySql大致分为一下三种锁: 1.表级锁:开销小,并发度低 2.行级锁:开销大,并发度高 3.页级锁:介于表级和行级之间

MyISAM引擎是表级锁,在执行select语句时,会自动给涉及的表加上读锁;在执行update/delete/insert语句时,会自动给涉及的表加上写锁。

InnoDB是行级锁 select .. from .. where .. LOCK IN SHARE MODE —> 共享锁 select .. from .. where .. FOR UPDATE —> 排他锁 在InnoDB中,只有通过检索索引才会使用行级锁,否则也是要表级锁

MySql默认是使用乐观锁。

Written on March 11, 2018