至于什么样的 *** 作会锁表,其实锁的种类很多,你所说的锁表大概说的是行级锁——也就是事务锁吧。比如一个update语句,被update的行上会有锁——能阻塞其他事务对这些行进行修改的锁,虽然这时候这张表上也有表级锁,但这个表级锁并不影响其他事务对表中的其他行进行修改,只是会阻碍对这张表的DDL *** 作。
给高并发情况下的mysql进行更好的优化MySQL有三种锁的级别:页级、表级、行级,这3种锁的特性可大致归纳如下:
表级锁:开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低。
行级锁:开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发度也最高。
页面锁:开销和加锁时间界于表锁和行锁之间;会出现死锁;锁定粒度界于表锁和行锁之间,并发度一般。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)