标签:delete 读取 不同 innodb 分享 border font image 机制
MySQL的锁机制比较简单,其最显著的特点是不同的存储引擎支持不同的锁机制。
table-level locking)。page-level locking),但也支持表级锁。row-level locking),也支持表级锁,但默认情况下是采用行级锁。
MySQL 的表级锁有两种模式:
Table Read Lock)Table Write Lock)
mysql表锁兼容性

SELECT)前,会自动给涉及的所有表加读锁。UPDATE、DELETE、INSERT 等)前,会自动给涉及的表加写锁。这个过程并不需要用户干预,因此,用户一般不需要直接用LOCK TABLE命令给MyISAM表显式加锁。
如果用户想要显示的加锁可以使用以下命令:
锁定表:LOCK TABLES tbl_name {READ | WRITE};解锁表:UNLOCK TABLES
| session_1 | session_2 | 
| //获取写锁 lock table film_text write; 
 
 
 | |
| //对film_text进行读取,插入,更新操作 select * from film_text where film_id=999\G; 
 
 insert into film_text(film_id,title) value (1001,‘Test‘); 
 
 update film_text set title=‘Test1‘ where film_id=‘1001‘; 
 
 | //对session_2进行操作 //读操作等待 select * from film_text where film_id=999\G; 
 //写操作等待 insert into film_text(film_id,title) value (1001,‘Test‘); 
 
 | 
| //session_1 释放锁 UNLOCK TABLES; 
 
 | |
| //释放锁后,session_2再次进行读,写操作 select * from film_text where film_id=999\G; 
 
 insert into film_text(film_id,title) value (1002,‘Test‘); 
 
 | 
标签:delete 读取 不同 innodb 分享 border font image 机制
原文地址:http://www.cnblogs.com/dsitn/p/7149354.html