码迷,mamicode.com
首页 > 数据库 > 详细

mysql 锁和隔离事务

时间:2019-10-14 10:44:00      阅读:91      评论:0      收藏:0      [点我收藏+]

标签:相同   back   不可重复读   情况   tar   可重复   ali   sele   条件查询   

--查询表锁争用情况
show status like ‘ord%‘;
--查看数据库中表的状态,是否被锁;
SHOW PROCESSLIST;

--脏读 读未提交
--A事务读取了B事务修改但未提交的数据 B稍后时候进行了回滚,那么A就发生了脏读

--不可重复读 读不回去了
--A事务在进行相同条件查询的时候,(两次或者两次以上)出现了每次结果不一样,因为在查询期间有其他事务进行了update操作,导致结果不一致


--幻读 读多了
--A事务在进行相同条件查询的时候,因为在查询期间发现记录数不一样了 ,因为进行了insert操作,导致结果不一致

--隔离级别
--1. 1 Read uncommitted 脏读
--2. 2 Read committed 避免脏读 会有重复读和幻读
--3. 4 repeatable read 可重复读 避免不可重复读
--4. 8 serializable 避免幻读 这样性能会低


--1关闭A自动提交
set autocommit =0;
--3开启事务
start transaction;
--4执行更新
update tableA set nane=‘je‘ where id=‘1‘;
--6回滚
rollback;

--2设置B隔离级别 读到A的未提交的数据uncommitted
--Read uncommitted(脏读)Read committed(不脏读)||repeatable read (重复读)|| serializable(幻读)
set session transaction isolation level Read uncommitted;
--5执行查询 查询结果为je
select * from tableA ;
--7 结果为原来的不是je
select * from tableA ;

mysql 锁和隔离事务

标签:相同   back   不可重复读   情况   tar   可重复   ali   sele   条件查询   

原文地址:https://www.cnblogs.com/simly/p/11669883.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!