文章目录
前言
在学校里学数据库的内容,我们会发现一个问题,就是老师不会讲到数据库的锁这一块来,但是我们面试的时候会被问到关于锁的知识点,所以我们今天开始学习关于锁的知识。首先Mysql锁有三种,分别是全局锁、表级锁和行级锁。
一、全局锁
1.全局锁是怎么用的?
要使用全局锁,则要执行:
flush tables with read lock
执行后,整个数据库处于只读状态,这时其他线程执行以下操作就会堵塞:
- 对数据的增删改操作,比如 insert、delete、update等语句;
- 对表结构的更改操作,比如 alter table、drop table 等语句。
如果要释放全局锁,则要执行以下操作:
unlock tables
会话断开,全局锁自动释放。
2.全局锁应用场景是什么?
全局锁主要