MySQL的读锁和解锁
来源:互联网 发布:php最好的语言 编辑:程序博客网 时间:2024/06/05 10:25
读锁和解锁其实只是一句SQL语句,语法
LOCK/UNLOCK TABLES tbl_name [[AS] alias] lock_type [, tbl_name [[AS] alias] lock_type]等等lock_type: 锁类型 READ [LOCAL] | [LOW_PRIORITY] WRITE
lock tables table_name read,那么表示该table_name的表只能被读而不能被写,而此时插入数据时,会出现:
Table 'user' was locked with a READ lock and can't be updated
想要写的时候,可执行unlock tables,然后就可以插入数据了!
注意:user表必须为Myisam表,以上测试才能全部OK,如果user表为innodb表,则lock tables user read
local命令可能没有效果,也就是说,如果user表为innodb表,第6时刻将不会被阻塞,这是因为INNODB表是事务型的,对于事务表,例如InnoDB和BDB,–single-transaction是一个更好的选项,因为它不根本需要锁定表。
如果一个线程在一个表上得到一个 WRITE 锁,那么只有拥有这个锁的线程可以从表中读取和写表。其它的线程被阻塞。
写锁定的命令:lock tables user write.user表为Myisam类型的表。
多表控制
//如 将 table1 设为read锁, table2 设为write锁, table3 设为read锁
lock tables [table1] read,[table2] write,[table3] read;
把表的读写锁交给线程,让线程来管理:
$db->lock( 'user', 2 ); //2代表写,1代表读 SQL语句的操作 $db->unlock(); //开锁
此致,谢谢点赞!
0 0
- MySQL的读锁和解锁
- mysql锁表和解锁语句
- mysql锁表和解锁语句分享
- mysql锁表和解锁语句分享
- mysql 查询锁表和解锁
- mysql锁表查询和解锁操作
- MYSQL锁表和解锁语句
- mysql锁表和解锁语句
- Oracle的查询锁记录和解锁
- 查看被锁的表和解锁
- 数据库的锁表和解锁操作
- MMI锁和解锁
- 锁表和解锁
- mysql 锁表与解锁
- MYSQL 解锁与锁表
- mysql解锁与锁表
- MYSQL 解锁与锁表
- MYSQL 解锁与锁表
- 几张图快速温习js
- 电力信息物理融合系统环境中的网络攻击研究综述(整理)
- CSS3--背景
- 二叉查找树
- python元素分类
- MySQL的读锁和解锁
- 黑客如何联系
- 小经验记录-- idea无法补全
- 使用echo输出一绝对路径,使用egrep取出其基名
- SQL的四种连接-左外连接、右外连接、内连接、全连接
- 网易MySQL数据库工程师微专业学习笔记(四)
- 3 时间复杂度和空间复杂度(1)
- 【转载】如何成为一个受欢迎的职场新人
- android客户端的自更新