锁住整个表,因此开销小,加锁比较快,无死锁状况,锁的粒度较大,在并发状况下,产生锁等待的几率比较高,因此支持的并发数较低,通常用于查找。html
mysql> LOCK TABLE 表名 [READ | WRITE] [,表名 [READ | WRITE]...] #加锁 mysql> UNLOCK TABLES #解锁
mysql> SHOW STATUS LIKE 'Table_locks_immediate';
表示能够当即获取锁的查询次数,每获取一次锁就增长1mysql
mysql> SHOW STATUS LIKE 'Table_locks_waited';
表示锁等待的次数sql
步骤 | Session1 | Session2 |
1 | 给myisam_lock加读锁 | |
2 | 能够查询myisam_lock表数据 | 能够查询myisam_lock表数据 |
3 | 不能够增删改myisam_lock表数据 | 增删改myisam_lock表数据阻塞 |
4 | 不能够增删改查其余表数据 | 能够增删改查其余表数据 |
5 | 释放myisam_lock的读锁 | 释放读锁同时阻塞的增删改为功 |
步骤 | Session1 | Session2 |
1 | 给myisam_lock加写锁 | |
2 | 能够查询myisam_lock表数据 | 查询myisam_lock表数据阻塞 |
3 | 释放myisam_lock的写锁 | 释放写锁同时阻塞的查询成功 |
4 | 给myisam_lock加写锁 | |
5 | 能够增删改myisam_lock表数据 | 增删改myisam_lock表数据阻塞 |
6 | 不能够增删改查其余表数据 | 能够增删改查其余表数据 |
7 | 释放myisam_lock的写锁 | 释放写锁同时阻塞的增删改为功 |
实践结束,我以为有必要解释一下关于表锁的特色:并发
本文索引关键字:性能
读锁(共享锁):http://www.cnblogs.com/huanStephen/p/8067972.html#s_lockspa
写锁(排它锁):http://www.cnblogs.com/huanStephen/p/8067972.html#x_lock线程
欢迎你们索引!code