mysql的表级锁

myisam默认使用的 是表级锁,一般的web应用表级锁基本都能满足需求了。Innodb默认使用的是行级锁,但是它也支持表级锁的。行级锁的精度更加高,同样耗掉的资源也是最多的。而伯克利DB引擎默认使用的页级锁,各有各的千秋。
1.mysql的表级锁使用方法:
lock table [tablename]  [lock-type];
例如,给表test1增加读锁:
lock table test1 read;
2.mysql的锁定解除方法:
unlock tables;
上面就是使用表级和解除的方法。下面的几个结论,我们可以亲自测试的,这也是从我的测试中得出来的:
1.写锁优先于读锁(这个可以用参数设置);
2.当读锁发生的时候,不能再加写锁,但是可以加读锁;
3.有写锁的时候,读锁和写锁都不能再加了;
当冲突的时候,后者会被加入到阻塞队列中。
ok,上面的结论可以用锁的使用方法验证的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值