比如说,一个 mysql sevrer 有 100 个连接
这一百个连接什么 level 都有
假如现在执行一个 level 为 SERIALIZABLE 的 crud sql
什么,此时 mysql server 会停掉其他 99 个连接的 sql 来实现 SERIALIZABLE 吗?
这个问题的意思就是,SERIALIZABLE level 只会让其他 SERIALIZABLE level,还是影响所有 level?
比如说,一个 mysql sevrer 有 100 个连接
这一百个连接什么 level 都有
假如现在执行一个 level 为 SERIALIZABLE 的 crud sql
什么,此时 mysql server 会停掉其他 99 个连接的 sql 来实现 SERIALIZABLE 吗?
这个问题的意思就是,SERIALIZABLE level 只会让其他 SERIALIZABLE level,还是影响所有 level?
4 回答1.5k 阅读✓ 已解决
8 回答1.3k 阅读
3 回答1.1k 阅读✓ 已解决
3 回答893 阅读✓ 已解决
2 回答1.8k 阅读
2 回答1.6k 阅读
1 回答890 阅读✓ 已解决
举个例子,假设有两个事务:事务 A 是 SERIALIZABLE 级别,事务 B 是 READ COMMITTED 级别。在事务 A 对某个数据进行操作时候,会获取到这条数据的排他锁(Exclusive Lock),这个时候事务 B 就没办法对这个数据进行操作,一直到事务 A 结束并释放锁。所以,SERIALIZABLE 隔离级别不会停止其他级别事务的执行,但可能会由于锁的原因影响到其他事务暂时等待。