MYSQL 表级锁 行级锁 页面锁区别

myisam存储引擎默认是表级锁

innodb存储引擎默认是行级锁

DBD存储引擎默认是页面锁

 

表级锁:开销小,加锁快;不会出现死锁;锁定粒度大,发出锁冲突的概率最高,并发度最低。
行级锁:开锁大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发度也最高。
页面锁:开销和加锁时间界于表锁和行锁之间;会出现死锁;锁定粒度界于表锁和行锁之间,并发度一般。

 


从上述特点可见,很难笼统的说哪种锁更好,只能就具体应用的特点来说哪种锁更合适!仅从锁的角度来说:表级锁

更于以查询为主,只有少量按索引条件更新数据的应用,如WEB应用;而行级锁则更适合于有大理按索引发更新少量

不同数据,同时又有并发查询的应用,如一些在线事务处理系统。

你可能感兴趣的:(MYSQL 表级锁 行级锁 页面锁区别)