InnoDB multi-version control
Official website: https://dev.mysql.com/doc/refman/8.0/en/innodb-multi-versioning.html
MVCC, the full name is Multi-Version Concurrency Control, which is multi-version concurrency control. MVCC is a concurrency control method. It is generally used in database management systems to achieve concurrent access to the database and to implement transactional memory in programming languages.
The implementation of MVCC in MySQL InnoDB is mainly to improve database concurrency performance and use a better way to handle read-write conflicts, so that even when there are read-write conflicts, no locking and non-blocking concurrent reading can be achieved
transaction isolation level
Check the transaction isolation level:
mysql> select @@transaction_isolation;
+-------------------------+
| @@transaction_isolation |
+-------------------------+
| REPEATABLE-READ |
+-------------------------+
1 row in set (0.00 sec)
The default isolation level is Repeatable Read
设置隔离级别
mysql> set session transaction isolation level READ COMMITTED;
Query OK, 0 rows affected (0.00 sec)
mysql> select @@transaction_isolation;
+-------------------------+
| @@transaction_isolation |
+-------