FLUSH TABLES WITH READ LOCK

简介:

1.FLUSH TABLES WITH READ LOCK

 这个命令是全局读锁定,执行了命令之后所有库所有表都被锁定只读。一般都是在数据库联机备份,这个时候数据库的写操作将被阻塞,读操作顺利进行。

 解锁的语句也是unlock tables

2.LOCK TABLES tabl_name[AS alias] {READ [LOCAL]|[LOW_PRIORITY]|WRITE}

 这个命令是表级别的锁定,可以定制锁定某一个表。例如:lock tables test read;不影响其他表的写操作

 解锁的语句也是unlock tables。

这两个语句在执行的时候需要注意个特点,就是 隐式提交的语句。在退出mysql终端的时候都会隐式的执行unlock tables。 也就是如果要让表锁定生效必须一直保持对话。

read-lock:不允许其他发的读和写请求,但阻塞写请求,既可以同时读,但不允许任何写。也叫共享锁

write-lock:不允许其他并发的读和写请求,是排他的(exclusive)。也叫独占锁











本文转自 xinsir999 51CTO博客,原文链接:http://blog.51cto.com/xinsir/1665326,如需转载请自行联系原作者
目录
相关文章
|
关系型数据库 MySQL 数据库
lock_read
lock_read
45 2
|
SQL 关系型数据库 MySQL
|
SQL 关系型数据库 MySQL
FLUSH TABLES WITH READ LOCK
前言 昨天碰到一个flush tables with read lock阻塞其他所有操作的案例,在博客园中6年前我已经写过一篇文章,再次拿出来分享下。 现象 id 账号 来源ip 库名 执行时间(秒) 状态 线程占用的内存(字节) SQL占用的内存(字.
7392 0
|
关系型数据库 MySQL 测试技术
MySQL中lock tables和unlock tables浅析
MySQL中lock tables和unlock tables浅析   在MySQL中提供了锁定表(lock tables)和解锁表(unlock tables)的语法功能,ORACLE与SQL Server数据库当中没有这种语法。
1576 0
0322理解db file parallel read等待事件2
[20180322]理解db file parallel read等待事件2.txt --//上个星期的学习:http://blog.itpub.net/267265/viewspace-2151973/ https://docs.
1145 0
|
关系型数据库 Oracle Linux
0316理解db file parallel read等待事件
[20180316]理解db file parallel read等待事件.txt --//一直对db file parallel read等待事件不理解,因为在实际系统中很少遇到这样的等待事件.
1203 0