当前位置:网站首页>[MySQL transaction]
[MySQL transaction]
2022-07-04 06:56:00 【No trace after wind 2018】
MySQL Basic knowledge of business
Business : A set of logical operating units , To change data from one state to another .
The transaction ACID characteristic
- Atomicity (atomicity):
Atomicity means that a transaction is an indivisible unit of work , Or submit it all , Either all failures roll back . - Uniformity (consistency):
Consistency refers to before and after transaction execution , Data from a legal state ( Meet the constraints in reality ) Change to another state of legitimacy . This state is Semantically Not grammatical , Related to specific business . - Isolated type (isolation):
Transaction isolation means that the execution of one transaction cannot be interfered by other transactions , That is, the internal operations of a transaction and the concurrency of the data pairs used Other transactions are isolated , Transactions that execute concurrently cannot interfere with each other . - persistence (durability):
Persistence means that once a transaction is committed , It changes the data in the database permanently , Other subsequent operations and database failures should not have any impact on it .
Data concurrency problem
The server handles multiple transactions at the same time , We want to maintain the isolation of transactions , And I want the server to have higher performance when processing transactions , The isolation level is used
Transactions that access the same data , What problems may occur during concurrent execution :
- Dirty write ( Dirty Write )
For two things Session A、Session B, If the transaction Session A Revised the other one Not submitted Business Session B A modified Number of numbers
According to the , That means something happened Dirty write - Dirty reading ( Dirty Read )
For two things Session A、Session B,Session A Read It has been Session B to update But Not submitted Field of .
Later, if Session B Roll back ,Session A Read The content of is Temporary and invalid Of . - It can't be read repeatedly ( Non-Repeatable Read )
For two things Session A、Session B,Session A Read It's a field , then Session B to update This field . after
Session A Read again Same field , The value is different 了 . That means that non repeatable . - Fantasy reading ( Phantom )
For two things Session A、Session B, Session A From a table Read It's a field , then Session B In the table insert Enter into Some new ones . after , If Session A Read again The same watch , There will be more lines . That means unreal reading .
MySQL Transaction isolation level for
MySQL The default isolation level for is REPEATABLE READ( Repeatable )
Higher isolation level , The better the data consistency , But the less concurrent .
- READ UNCOMMITTED : Read uncommitted , At this isolation level , All transactions can see the results of other uncommitted transactions . Can't avoid dirty reading 、 It can't be read repeatedly 、 Fantasy reading .
- READ COMMITTED : Read submitted , It satisfies the simple definition of isolation : A transaction can only see changes that have been committed by the transaction . This is the default isolation level for most database systems ( But it's not MySQL default ). Avoid dirty reading , But not repeatable 、 The unreal reading problem still exists .
- REPEATABLE READ : Repeatable , Business A After reading a piece of data , At this point, the transaction B This data has been modified and submitted , The transaction A Reread the data , Read the original content . Avoid dirty reading 、 It can't be read repeatedly , But the problem of unreal reading still exists . This is a MySQL The default isolation level of .
- SERIALIZABLE : Serializable , Make sure that transactions can read the same rows from a table . During the duration of this transaction , Prevent other transactions from inserting into the table 、 Update and delete operations . All concurrency problems can be avoided , But the performance is very low . It can avoid dirty reading 、 No repeated reading or phantom reading .

边栏推荐
- Centos8 install mysql 7 unable to start up
- 2022年,或许是未来10年经济最好的一年,2022年你毕业了吗?毕业后是怎么计划的?
- Shopping malls, storerooms, flat display, user-defined maps can also be played like this!
- Check and display one column in the known table column
- Analysis of tars source code 1
- 【问题记录】03 连接MySQL数据库提示:1040 Too many connections
- Campus network problems
- 2022年6月小结
- Latex中的单引号,双引号如何输入?
- Mysql 45讲学习笔记(十四)count(*)
猜你喜欢

com. alibaba. nacos. api. exception. NacosException

Mobile adaptation: vw/vh

【问题记录】03 连接MySQL数据库提示:1040 Too many connections

notepad++如何统计单词数量
![[problem record] 03 connect to MySQL database prompt: 1040 too many connections](/img/bb/4d8d202cf5c6e556bc860a734e5934.png)
[problem record] 03 connect to MySQL database prompt: 1040 too many connections

The important role of host reinforcement concept in medical industry

GoogleChromePortable 谷歌chrome浏览器便携版官网下载方式

Campus network problems

P26-P34 third_ template

Uniapp applet subcontracting
随机推荐
Tar source code analysis Part 10
Lottery system test report
关于IDEA如何设置快捷键集
tars源码分析之1
Realize IIC data / instruction interaction with micro batg135
Campus network problems
请问旧版的的常用SQL怎么迁移到新版本里来?
leetcode 310. Minimum Height Trees
MySQL 45 lecture learning notes (x) force index
MySQL relearn 2- Alibaba cloud server CentOS installation mysql8.0
Download address of the official website of national economic industry classification gb/t 4754-2017
[FPGA tutorial case 7] design and implementation of counter based on Verilog
What is industrial computer encryption and how to do it
同一个job有两个source就报其中一个数据库找不到,有大佬回答下吗
The cloud native programming challenge ended, and Alibaba cloud launched the first white paper on application liveliness technology in the field of cloud native
响应式——媒体查询
Deep profile data leakage prevention scheme
2022 wechat enterprise mailbox login entry introduction, how to open and register enterprise wechat enterprise mailbox?
2022年6月小结
What is a spotlight effect?