当前位置:网站首页>MySQL global lock and table lock
MySQL global lock and table lock
2022-07-05 23:55:00 【ADU】
MYSQL The lock inside can be divided into : Global lock , Table lock , Row-level locks
1 Global lock
Lock the whole database instance
MYSQL Provide global lock reading methods :Flush tables with read lock(FTWRL)
This command makes the entire library read-only , After using this command , Data update statement 、 Data definition statements and commit statements of update class transactions are blocked
1.1 Use scenarios
Global logical backup
risk :
- If the main database is backed up , Cannot update during backup , Business suspension
- If backing up from the Library , Cannot perform primary database synchronization during backup binlog, Cause master-slave delay
The official logic backup tool mysqlddump, When mysqldump Using parameter –single-transaction When , Will start a transaction , Make sure you get a consistent view . because MVCC Support for , The data in this process can be updated normally
Consistent reading is good , But only if the engine supports this isolation level
If you want the full library to be read-only , Why not use set global readonly=true The way ???
1 In some systems ,readonly The value of will be used for other logic , For example, judge the primary and standby databases . So modify global The way variables affect too much
2 There are differences in exception handling mechanisms , If you execute FTWRL After the command, due to the abnormal disconnection of the client , that MYSQL This global lock will be released automatically , The whole library can return to the normal update state . Instead, set the entire library to readonly after , If the client has an exception , Then the database will remain readonly state , This will cause the entire library to be in a non writable state for a long time , High risk
2 Table lock
MYSQL There are two kinds of meter level locks inside , One is watch lock , One is metadata lock (meta data lock, MDL)
2.1 Table locks
Syntax of table lock : lock tables…read/write
have access to unlock tables Active release lock , It can also be released automatically when the client is disconnected .lock tables The syntax will restrict the reading and writing of other threads , It also defines the next operation objects of this thread
about InnoDB This kind of engine supports row lock , commonly Don't use lock tables Command to control concurrency , After all, locking the whole table still has a great impact .
2.2 MDL
You don't need to explicitly use , It will be added automatically when accessing a table
effect : Ensure the correctness of reading and writing
1 When adding, deleting, modifying and querying a table , Add MDL Read the lock
2 When changing the table structure , Add MDL Write lock
3 Read locks are not mutually exclusive
4 Read-write lock , Write locks are mutually exclusive , It is used to ensure the security of the schema operation of the change table
5 MDL Will not be released until the transaction is committed , When making table structure changes , Be careful not to lock online queries and updates
边栏推荐
- 多普勒效應(多普勒頻移)
- Asynchronous task Whenall timeout - Async task WhenAll with timeout
- PADS ROUTER 使用技巧小记
- wx.getLocation(Object object)申请方法,最新版
- Research notes I software engineering and calculation volume II (Chapter 1-7)
- Do you regret becoming a programmer?
- How much do you know about the bank deposit business that software test engineers must know?
- Qt 一个简单的word文档编辑器
- GFS分布式文件系统
- GFS distributed file system
猜你喜欢

The use of El cascader and the solution of error reporting

Online yaml to CSV tool

18.(arcgis api for js篇)arcgis api for js点采集(SketchViewModel)

20. Migrate freetype font library

保研笔记四 软件工程与计算卷二(8-12章)

保研笔记一 软件工程与计算卷二(1-7章)

20220703 week race: number of people who know the secret - dynamic rules (problem solution)

Bao Yan notes II software engineering and calculation volume II (Chapter 13-16)

激光slam学习记录

数据库遇到的问题
随机推荐
Objective C message dispatch mechanism
Upgrade openssl-1.1.1p for openssl-1.0.2k
How to rotate the synchronized / refreshed icon (EL icon refresh)
C# 文件与文件夹操作
2022.6.20-6.26 AI industry weekly (issue 103): new little life
15 MySQL stored procedures and functions
妙才周刊 - 8
零犀科技携手集智俱乐部:“因果派”论坛成功举办,“因果革命”带来下一代可信AI
行列式学习笔记(一)
Use mapper: --- tkmapper
The use of El cascader and the solution of error reporting
GD32F4xx uIP协议栈移植记录
Qt 一个简单的word文档编辑器
How to get all the values stored in localstorage
C# 反射与Type
Convert Chinese into pinyin
Go language introduction detailed tutorial (I): go language in the era
上门预约服务类的App功能详解
数据库遇到的问题
第16章 OAuth2AuthorizationRequestRedirectWebFilter源码解析