【发布时间】:2016-06-15 05:25:56
【问题描述】:
我的系统上安装了 MySQL 5.7,它设置了默认事务隔离级别“REPEATABLE-READ”。我的场景需要“READ-COMMITTED”。所以我更改了配置文件中的隔离级别,以便我可以将“READ-COMMITTED”作为默认值。
是的,在将其添加到配置文件时,我可以看到隔离级别在全局级别发生了更改,但在会话级别仍然是“REPEATABLE-READ”。我认为一旦我重新启动服务器,文件中的任何更改都应该在全局和会话级别之间进行设置。但这并没有改变。
请帮我解决这个问题。
【问题讨论】:
-
你是如何连接到数据库的?您的脚本/库不是在连接时设置会话变量吗?
-
@Marki555 不,他们没有。我只想知道为什么编辑配置文件时值没有改变
-
如果
show global variables like 'tx_isolation';显示正确的值,那么您的配置工作正常。您也可以通过mysql --verbose --help|grep isolation进行检查 - 它会显示 mysqld 在启动时使用的值。 -
@Marki555 是的。但是,如果我为新会话执行
show session variables like 'tx_isolation';,默认情况下我会看到“REPEATABLE-READ”。我们不能改变吗? -
通过mysql命令行客户端连接时也会出现这种情况吗?
标签: mysql transactions transaction-isolation