use*_*858 4 mysql innodb snapshot-isolation
我正在开展一个学校项目,现在需要根据不同的隔离级别来描述MySQL的性能.我已经在READ UNCOMMITTED,READ COMMITTED,REPEATABLE READ和SERIALIZABLE上测试了一些东西.现在我想使用快照隔离测试一些东西.
我理解当在InnoDB中使用REPEATABLE READ的默认值时,快照隔离是一起使用的,但我想知道,是否可以将隔离级别设置为仅隔离快照?我该怎么办?
没有全局快照隔离级别.来自MySQL文档,START TRANSACTION语法:
您也可以开始这样的交易:
Run Code Online (Sandbox Code Playgroud)START TRANSACTION WITH CONSISTENT SNAPSHOT;该
WITH CONSISTENT SNAPSHOT选项为具有该功能的存储引擎启动一致读取.这仅适用于InnoDB.效果与从任何InnoDB表发出aSTART TRANSACTION后跟a 相同SELECT.请参见第13.6.8.2节"一致的非锁定读取".该WITH CONSISTENT SNAPSHOT选项不会更改当前事务隔离级别,因此仅当当前隔离级别允许一致读取(REPEATABLE READ或SERIALIZABLE)时,它才提供一致的快照.
因此,您必须使用上述语法将隔离级别设置为REPEATABLE READ或SERIALIZABLE启动事务.
| 归档时间: |
|
| 查看次数: |
5047 次 |
| 最近记录: |