首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何设置事务隔离级别(MySQL)

如何设置事务隔离级别(MySQL)
EN

Stack Overflow用户
提问于 2011-10-29 07:02:32
回答 4查看 64.5K关注 0票数 33

如何设置MySQL 5.1 InnoDB的隔离级别?

通过输入:

mysql>显示诸如‘%isola%’这样的变量;

InnoDB的默认级别设置为可重复读取。

如何更改隔离级别?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-10-29 07:08:20

代码语言:javascript
复制
SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED

SESSION是可选的,只需将设置限制在当前会话。

READ UNCOMMITTED将被您想要的级别替换。

https://dev.mysql.com/doc/refman/8.0/en/set-transaction.html

票数 57
EN

Stack Overflow用户

发布于 2020-04-24 19:46:16

将会话变量添加到连接字符串中

在连接到mysql数据库时,只需将其添加到连接字符串。

?sessionVariables=transaction_isolation='READ-COMMITTED'

您可以检查其他隔离级别的值。

票数 5
EN

Stack Overflow用户

发布于 2022-09-13 20:24:30

您可以设置4事务隔离级别4作用域,如下所示。*您可以查看有关的更多细节。

使用PERSIST scope,即使在重新启动MySQL之后,也不会重置事务隔离级别

代码语言:javascript
复制
SET PERSIST TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;

或者:

代码语言:javascript
复制
SET PERSIST transaction_isolation = 'READ-UNCOMMITTED';

使用GLOBAL scope,在重新启动MySQL之后,会重置事务隔离级别

代码语言:javascript
复制
SET GLOBAL TRANSACTION ISOLATION LEVEL READ COMMITTED;

或者:

代码语言:javascript
复制
SET GLOBAL transaction_isolation = 'READ-COMMITTED';

使用SESSION scope,在注销MySQL后,重新设置事务隔离级别

代码语言:javascript
复制
SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ;

或者:

代码语言:javascript
复制
SET SESSION transaction_isolation = 'REPEATABLE-READ';

对于no scope,在执行下一个事务后,将重置事务隔离级别

代码语言:javascript
复制
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;

或者:

代码语言:javascript
复制
SET transaction_isolation = 'SERIALIZABLE';
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7937472

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档