Home > Database > Mysql Tutorial > Common database classification methods

Common database classification methods

angryTom
Release: 2019-10-30 14:08:29
Original
3502 people have browsed it

Common database classification methods

Common database classification methods

With the continuous development of the Internet, enterprises can use Methods are also increasing, and today we will take a look at what are the common data classification methods.

1, Read Uncommitted.

refers to one transaction reading content that another transaction has not yet submitted. This situation must be avoided. Because uncommitted data from other transactions may be rolled back at any time, programs should not be allowed to read uncommitted data from a transaction at any time. If uncommitted data from another transaction is read, this situation is called a dirty read. To solve the problem of dirty reads, you can increase the transaction isolation level of the database and set the transaction isolation level to read committed.

2, Read Committed.

This isolation level can solve the problem of dirty reading.

Under this isolation level, parallel execution between two uncommitted transactions is not allowed, but it allows another transaction to be executed and submitted during the execution of one transaction. In this way, there will be a situation where the values ​​of a certain row of data selected twice before and after a transaction may be different. The reason for the value change is that the interspersed transaction 2 performed an update operation on the row of data. In the same transaction, the problem of different values ​​selected twice is called a non-repeatable read problem. To solve the non-repeatable read problem, you need to set the isolation level of the data to repeatable read.

3, can be read repeatedly. Repeatable Read.

Under this isolation level, the problem of non-repeatable reads can be solved.

Under this isolation level, while a transaction is using the data of a certain row, other transactions are not allowed to operate on the data of the row. Repeatable reads should add locks to database rows. Under this isolation level, other transactions are still allowed to insert and delete data in the table, so it will appear that during the execution of transaction 1, if rows that meet a certain condition are selected twice, if between these two After the second select, another transaction is executed. If certain rows are inserted or deleted, the results of the two selects that meet the same conditions will be different. One select seems to be an illusion. Therefore, this problem has also been solved. Become a phantom reader. To solve the phantom read problem, you need to set the isolation level of the database to serialization.

4, Serialization.

Serialization can solve the problem of phantom reading.

It requires that the execution of transactions is completely serialized. So the efficiency of concurrency is lost.

The default isolation level of Mysql is repeatable read.

In short, the transaction isolation level of data is divided into 4 types, from low to high, they are read uncommitted, read committed, repeatable read, and serialized. There are three issues related to the database transaction isolation level, namely dirty reads, non-repeatable reads, and phantom reads. The dirty read problem needs to be solved by read committed, but read committed will cause non-repeatable read problems. The non-repeatable read problem needs to be solved with repeatable read, but repeatable read will cause phantom read problem. The phantom read problem needs to be solved with serialization.

Recommended "mysql video tutorial"

The above is the detailed content of Common database classification methods. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template