mysql 隔离级别

隔离级别是为了解决以下问题的:

1.脏读(Drity Read):一个事务读取到另一个事务未提交的数据

2.不可重复读(Non-repeatable read):一个事务读取到另一个事务已提交的数据 (主要是修改)

3.幻读(一个事务多次查询整表数据,由于其他事务新增记录造成多次查询的记录条数不同(一个事务读取到另一个事务已经提交的数据)) (主要是针对insert)

 

sql标准定义了四种隔离级别:

1.读未提交(read uncommitted):不作任何隔离,具有脏读、不可重复读、幻读问题.

2.读已提交(read committed):只能解决脏读问题

3.可重复读(repeatable read):解决脏读和不可重复读的问题, 不能决绝幻读问题, 是mysql的默认隔离级别

4.可串行化(serializable):数据库运行在串行化,上述问题都可以防止,只是性能非常低

 

posted @ 2020-12-01 21:52  牛牛码代码  阅读(77)  评论(0编辑  收藏  举报