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服务后,全局设置通常会恢复到配置文件中指定的默认值。

相关推荐
zyseo811 小时前
谷歌SEO 准首页词挖掘脚本:找出排在第 8-20 名的隐藏流量
大数据·数据库·人工智能
xiaogai_gai13 小时前
仅查询策略实战:从金蝶云·星空旗舰版定时拉取收料通知单
大数据·数据库·python
数据工匠老o13 小时前
异构数据库DDL同步:260条链路的结构变更自动适配方案
数据库·架构
L00113 小时前
MySQL5.7 DATE 字段无法设置默认日期?用触发器搞定|个人任务清单项目实战
mysql
这个DBA有点耶14 小时前
银行业市占率最高的国产数据库是谁?先搞清楚“市占率”的四种口径
数据库·程序员·架构
用户62799471826215 小时前
南大通用GBase 8a之基于审计日志的冷温热数据分析
数据库
数据库小学妹15 小时前
数据库运维五级成熟度:监控、备份、高可用怎么串起来
运维·数据库·监控
一个天蝎座的程序猿15 小时前
为了给报表提速,我把金仓KES的列存储折腾了个遍:聊聊KES的技术能力
数据库
飞越未来云城的霓虹飞猪15 小时前
AI 数据库地图:从 PostgreSQL 到向量数据库,一次看懂 AI 时代的数据底座
数据库
不像程序员的程序媛15 小时前
导出mysql数据结构
数据库·mysql