mysql 设置事务级别

1、查询数据库事务隔离级别
sql 复制代码
-- 在MySQL中,你可以通过执行以下SQL命令来查询当前会话的事务隔离级别:
SELECT @@transaction_isolation;
-- 如果你想要查询MySQL服务器的全局事务隔离级别,可以使用:
SELECT @@global.transaction_isolation;
2、设置

在MySQL中,如果你想设置事务隔离级别只在本次会话(Session)中生效,可以使用以下SQL命令:

sql 复制代码
SET SESSION TRANSACTION ISOLATION LEVEL <隔离级别>;

这里 <隔离级别> 可以替换为以下四个事务隔离级别之一:

  • READ UNCOMMITTED:读未提交,最低级别,每个事务都可以看到其他未提交事务的修改。
  • READ COMMITTED:读已提交,一个事务只能看见已经提交事务所做的修改。
  • REPEATABLE READ:可重复读,MySQL的默认事务隔离级别,确保同一事务中多次读取同样的数据返回相同结果。
  • SERIALIZABLE:可串行化,最高级别,最严格的级别,事务依次执行,相当于顺序执行。
sql 复制代码
SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ;

这个设置只会影响当前的会话,当会话结束或者断开连接时,该设置就会失效,不会影响其他会话或后续的新会话。如果你想让设置对所有新会话都生效,可以使用GLOBAL关键字来设置全局事务隔离级别,但请注意,这不会影响已经存在的会话,并且重启MySQL服务后,全局设置通常会恢复到配置文件中指定的默认值。

相关推荐
ClouGence8 小时前
Oracle CDC 架构优化:从主库直连到 DataGuard 备库同步
数据库·后端·oracle
云技纵横9 小时前
Gap Lock 死锁实战:5 秒在本地复现 MySQL 间隙锁死锁
后端·mysql
无响应de神10 小时前
三、用户与权限管理
数据库·mysql
摇滚侠1 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
麦聪聊数据1 天前
数据服务化时代:企业数据能力输出的核心路径
数据库
ApacheSeaTunnel1 天前
实战演示 | 基于 Apache SeaTunnel 与 Apache DolphinScheduler 实现 MySQL 到 Doris 离线定时增量同步
大数据·mysql·开源·doris·数据集成·seatunnel·数据同步
shushangyun_1 天前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化
DARLING Zero two♡1 天前
【MySQL数据库】数据类型与表约束
数据库·mysql
曹牧1 天前
Oracle EXPLAIN PLAN
数据库·oracle