mysql的四种隔离级别

其几天看书,看到书中对这个问题的解释,模棱两可,用专有名词解释专有名词,有点扯。个人认为,解释一个关键词时,不应该再给读者引入一个新的对他可能陌生的关键词来做解释,让人云里雾里。这里用业务含义通俗的解释下这几个关键词的含义。

repeatable read 可重复读

b事务中多次读取同一个值,b事务多次读的过程中,如果a事务把值改了,并且事务也提交了,这种情况下,b事务读的值依然是最开始读的那个值。

这个是mysql的默认隔离级别。可以使用:select @@transaction_isolation;查询

read uncommitted 读未提交

b事务中多次读取同一个值,b事务多次读的过程中,如果a事务把值改了,尽管a事务没有提交,b事务也是可以读到a做出的更改。(脏读)

read committed 读已提交

b事务中多次读取同一个值,b事务多次读的过程中,如果a事务把值改了,只有a事务提交了,b事务才可以读到a事务所作的更改。

serializable 串行化

串行化的执行。

查询数据库隔离界别

SELECT @@GLOBAL.tx_isolation,@@tx_isolation;

select * from user for update ;会把查询出的内容加锁。

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 鲸 设计师:meimeiellie 返回首页