1)四种隔离级别
1.RU级别:READ UNCOMMITTED(未提交读),允许事务查看其他事务所进行的未提交更改
2.RC级别:READ COMMITTED,允许事务查看其他事务所进行的已提交更改
3.RR级别:REPEATABLE READ,允许事务查看其他事务所进行的已提交更改,需要重新登录数据库才能查看到提交的数据
4.串行化:SERIALIZABLE,将一个事务的结果与其他事务完全隔离
2)数据库专业名词
#1.脏读:
执行一个事务,还没有提交就被读取,可是事务回滚了,那么之前读到的数据就是脏数据
#2.幻读:
当删除一条数据时,刚删除,有别人插入同一条数据,我查看时以为是没有删除
#3.不可重复读
第一次读取数据和第二次读取数据之间数据被别人修改了,导致第一次读取的数据与第二次读取的数据不同
3)设置隔离级别
#1.查看隔离级别
mysql> show variables like '%iso%';
+---------------+-----------------+
| Variable_name | Value |
+---------------+-----------------+
| tx_isolation | REPEATABLE-READ |
+---------------+-----------------+
1 row in set (0.00 sec)
#2.设置数据库为RU级别
[root@db01 ~]# vim /etc/my.cnf
[mysqld]
transaction_isolation=read-uncommit
#transaction_isolation=read-commit