我对MySQL工作台6.0CE有一个问题,我将尽可能地描述它:
MySQL工作台总是将我的会话变量@@tx_isolation设置为"REPEATABLE READ",更改该变量的唯一方法是使用SET tx_isolation='READ-COMMITTED';。
我想要的是,当我启动工作台时,tx_isolation的默认会话变量是'READ-COMMITTED'而不是'REPEATABLE-READ';是的,我已经更改了全局变量tx_isolation,它是'READ-COMMITTED',但是会话1不是。
Ej:
SELECT @@Global.tx_isolation, @@tx_isolation;返回:'READ-COMMITTED','REPEATABLE-READ'。
注意:如果我在MySQL命令行中查询相同的代码,这两个变量都被设置为'READ-COMMITTED',这就是为什么我认为这是MySQL工作台而不是服务器的问题所在。
谢谢你的帮助。
发布于 2016-11-29 11:06:01
这是个老问题,但我还是有同样的问题。
根据doc (repeatable-read),默认的隔离级别是可重复读取的.
这意味着数据库的快照是在事务的第一次读取时生成的。此事务的其他读取将显示快照的数据。
因此,您需要结束事务(提交或回滚)以获得下一次读取的新快照。
我在AutoCommit上设置AutoCommit工作台的同事没有看到可重复读取的行为。我们发现这是因为在每次选择之后,事务将被关闭并创建一个新的快照。
因此,由于bug仍未得到纠正(如Sithsu所述),一个解决办法是:
https://stackoverflow.com/questions/25268782
复制相似问题