设为首页 加入收藏

TOP

Mysql 锁粒度
2015-11-21 01:27:32 来源: 作者: 【 】 浏览:0
Tags:Mysql
表锁:
?
表锁是 mysql 中最几本的锁策略,并且是开销最小的策略:它会锁定整张表。
?
一个用户在对表进行锁操作(增,删,改)前,首先要获得写锁,这会阻塞其他用户对该表的所有读写操作。只有没有写锁时,其他用户才能获得读锁,读锁之间是不相互阻塞的。
?
在特定的场景中,表锁也可能有良好的性能。例如:READ ?LOCAL 表锁支持某些类型的并发写操作。另外,写锁也比读锁有更高的优先级,因此,一个写锁的请求,可能会被插入到读锁队列的前面(写锁能插入到锁队列的前面,反之,读锁不能插入到写锁的前面);
?
尽管存储引擎可以管理自己的锁,Mysql本身还是会使用各种有效的锁来实现不同的目的。例如:服务器会为诸如 ALTER TABLE 之类的语句使用表锁,而忽略存储引擎的锁机制。
?
行级锁:
?
行级锁可以最大程度的支持并发处理(同时也带来最大锁开销)。众所周知,在InnoDB 和XtraDB 以及其他一些存储引擎中实现了行级锁。行级锁只在存储引擎层实现,而Mysql服务器层没有实现。
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Mysql 应该选择什么引擎 下一篇InnoDB概览

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: