Mysql

服务器

浏览数:69

2020-6-28

Mysql 优化

Mysql 锁

表锁演示

表锁有两种表现形式:

表共享读锁(Table Read Lock) 表独占写锁(Table Write Lock

手动增加表锁

lock table 表名称 read(write),表名称2 read(write),其他;

查看表锁情况

show open tables;

删除表锁

unlock tables;

表锁演示

1、session1: lock table mylock read; -- 给mylock表加读锁 2、session1: select \* from mylock; -- 可以查询 3、session1:select \* from tdep; --不能访问非锁定表 4、session2:select \* from mylock; -- 可以查询 没有锁 5、session2:update mylock set name='x' where id=2; -- 修改阻塞,自动加行写锁 6、session1:unlock tables; -- 释放表锁 7、session2:Rows matched: 1 Changed: 1 Warnings: 0 -- 修改执行完成 8、session1:select \* from tdep; --可以访问
session1(Navicat)、session2(mysql) 1、session1: lock table mylock write; -- 给mylock表加写锁 2、session1: select \* from mylock; -- 可以查询 3、session1:select \* from tdep; --不能访问非锁定表 4、session1:update mylock set name='y' where id=2; --可以执行 5、session2:select \* from mylock; -- 查询阻塞 6、session1:unlock tables; -- 释放表锁 7、session2:4 rows in set (22.57 sec) -- 查询执行完成 8、session1:select \* from tdep; --可以访问

作者:小小____