mysql 表锁——读锁和写锁
生活随笔
收集整理的这篇文章主要介绍了
mysql 表锁——读锁和写锁
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
注意,
0、表的索引类型必须是InnoDB.相关链接:http://www.cnblogs.com/CyLee/p/5579672.html
1、如果你使用Navicat Premium,有可能会出现程序bug无法解锁。但在正常环境下是没问题的
2、存储过程里不允许使用锁
3、phpmyadmin是每次刷新都会重新链接一次,所以也不适合测试多会话(SESSION)
4、互联网时代不太可能使用到表锁,通常是使用行锁,除非erp系统之类的内部系统
读锁:所有的会话只能进行SELECT语句查询
LOCK TABLE [TABLE_NAME] READSELECT * FROM TABLE_NAME;
INSERT INTO TABLE_NAME () VALUES (); #一直等待,直到解锁或者超时
写锁:只有当前会话能增删改查,其他会话无法任何操作
LOCK TABLE [TABLE_NAME] WRITE解锁:
UNLOCK TABLES #常规解锁LOCO TABLE [TABLE_NAME] READ #再一次锁上,会解除上一次被拦截的对象。然后继续拦截LOCO TABLE [TABLE_NAME] WRITE #再一次锁上,会解除上一次被拦截的对象。然后继续拦截
总结
以上是生活随笔为你收集整理的mysql 表锁——读锁和写锁的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 梦到人跳河什么意思
- 下一篇: [php入门] 3、WAMP中的集成My