File tree Expand file tree Collapse file tree 1 file changed +22
-0
lines changed Expand file tree Collapse file tree 1 file changed +22
-0
lines changed Original file line number Diff line number Diff line change @@ -16,4 +16,26 @@ MySQL这3种锁的特性可大致归纳如下。
16
16
仅从锁的角度来说:表级锁更适合于以查询为主,只有少量按索引条件更新数据的应用,如Web应用;
17
17
而行级锁则更适合于有大量按索引条件并发更新少量不同数据,同时又有并发查询的应用,如一些在线事务处理(OLTP)系统。
18
18
从上述特点可见,很难笼统地说哪种锁更好,只能就具体应用的特点来说哪种锁更合适!
19
+
20
+
21
+
22
+ ****************************************************************************************************
23
+ MySQL的表级锁有两种模式:表共享读锁(Table Read Lock)和表独占写锁(Table Write Lock)。
24
+ MySQL中的表锁兼容性
25
+
26
+ 给表加锁
27
+ 1.加共享读锁
28
+ lock table 表名 read
29
+ 2.表独占写锁
30
+ lock table 表名 read
31
+
32
+
33
+ 说明:
34
+ 对MyISAM表的读操作,不会阻塞其他用户对同一表的读请求,但会阻塞对同一表的写请求;
35
+ 对 MyISAM表的写操作,则会阻塞其他用户对同一表的读和写操作;
36
+ MyISAM表的读操作与写操作之间,以及写操作之间是串行的!当一个线程获得对一个表的写锁后,只有持有锁的线程可以对表进行更新操作。
37
+ 其他线程的读、写操作都会等待,直到锁被释放为止。
38
+ 一个session使用LOCK TABLE命令给表f加了读锁,这个session可以查询锁定表中的记录,但更新或访问其他表都会提示错误;
39
+ 同时,另外一个session可以查询表中的记录,但更新就会出现锁等待。
40
+
19
41
You can’t perform that action at this time.
0 commit comments