Mysql的lock tables和unlock tables

http://blog.csdn.net/sunhuaquan/article/details/6202635测试

1 lock table 读锁定

对t1表加只读锁  本线程和其余线程只能读不能写spa

lock tables t1 read;.net

unlock tables; 释放读锁线程


对t1表加只读锁增长local选项  本线程只读,其余线程可insert,不能updateblog

lock tables t1 read local;事务


注意:user表必须为Myisam表,以上测试才能所有OK,若是user表为innodb表,则lock tables user read local命令可能没有效果,也就是说,若是user表为innodb表,第6时刻将不会被阻塞,这是由于INNODB表是事务型的,对于事务表,例如InnoDB和BDB,--single-transaction是一个更好的选项,由于它不根本须要锁定表it


2 lock table 写锁定

若是一个线程在一个表上获得一个WRITE锁,那么只有拥有这个锁的线程能够从表中读取和写表。其它的线程被阻塞io


lock tables t1 write;   t1表为Myisam类型表innodb

相关文章
相关标签/搜索