在另一个事务中提交数据对象后在一个事务中读取数据对象 - 脏读?

Posted

技术标签:

【中文标题】在另一个事务中提交数据对象后在一个事务中读取数据对象 - 脏读?【英文标题】:Reading data object in one transaction after comitting data object in another transaction - dirty read? 【发布时间】:2018-10-02 01:55:07 【问题描述】:

根据定义,脏读是对未提交数据的读取。我的问题是:

如果您有多个来自同一故事中不同事务的写操作紧接着发生(比如说事务 1、2 和 3),那么在写入结束时,其中一个事务提交(假设它是事务1),然后从事务 2 或 3 读取,这算作脏读吗?

例如:w1(X);w2(X);w3(X);c1;r2(X).....

【问题讨论】:

【参考方案1】:

不,这些术语是不可重复读取或幻读 (source)。许多(如果不是大多数)数据库引擎默认允许它们。

【讨论】:

以上是关于在另一个事务中提交数据对象后在一个事务中读取数据对象 - 脏读?的主要内容,如果未能解决你的问题,请参考以下文章

总结mysql调优

MySql事务隔离的特点与实现

事务隔离级别详解

SQL 脏读

事务的隔离级别是啥?

事务的隔离级别和传播特性