
RU读未提交 脏读/不可重复读/幻读 。不适用MVCC读,可以读到其他事务修改甚至未提交的。
RC读已提交 不可重复读/幻读 。其他事务对数据库的修改,只要已经提交,其修改的结果就是可见的,与这两个事务开始的先后顺序无关,不完全适用于MVCC读。
RR可重复读 幻读 。完全适用MVCC,只能读取在它开始之前已经提交的事务对数据库的修改,在它开始以后,所有其他事务对数据库的修改对它来说均不可见。
S串行化 完全不适合适用MVCC,这样所有的query都会加锁,再它之后的事务都要等待。
要设置一个事务的事务隔离级别,使用SET TRANSACTION命令。Session 1postgres=# SET SESSION CHARACTERISTICS AS TRANSACTION ISOLATION LEVEL SERIALIZABLE;SET设置串行化的事务隔离级别Session 2postgres=# SET SESSION CHARACTERISTICS AS TRANSACTION ISOLATION LEVEL SERIALIZABLE;SET设置串行化的事务隔离级别postgres=# create table test(id int);CREATE TABLEpostgres=# insert into test(id) values(1);INSERT 0 1postgres=# insert into test(id) values(2);INSERT 0 1postgres=# insert into test(id) values(3);INSERT 0 1Session 1postgres=# SET SESSION CHARACTERISTICS AS TRANSACTION ISOLATION LEVEL SERIALIZABLE;SET设置串行化的事务隔离级别Session 2postgres=# SET SESSION CHARACTERISTICS AS TRANSACTION ISOLATION LEVEL SERIALIZABLE;SET设置串行化的事务隔离级别Session 1postgres=# BEGIN;BEGINpostgres=# update test set id=11 where id=1;UPDATE 1Session 2postgres=# begin;BEGINpostgres=# update test set id=1 where id=1;阻塞状态Session 1postgres=# ROLLBACK;ROLLBACKSession 2提示以下信息ERROR: could not serialize access due to concurrent update
复制
新闻|Babelfish使PostgreSQL直接兼容SQL Server应用程序
更多新闻资讯,行业动态,技术热点,请关注中国PostgreSQL分会官方网站
https://www.postgresqlchina.com
中国PostgreSQL分会生态产品
https://www.pgfans.cn
中国PostgreSQL分会资源下载站
https://www.postgreshub.cn
点击此处阅读原文
↓↓↓
文章转载自开源软件联盟PostgreSQL分会,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
外国CTO也感兴趣的开源数据库项目——openHalo
小满未满、
2044次阅读
2025-04-21 16:58:09
QPlus V6.3 更新,新增PostgreSQL与PolarDB PG支持,OceanBase 容灾管理重磅上线
沃趣科技
263次阅读
2025-05-13 09:39:27
4月“墨力原创作者计划”获奖名单公布!
墨天轮编辑部
208次阅读
2025-05-13 16:21:59
中国PostgreSQL培训认证体系新增PGAI应用工程师方向
开源软件联盟PostgreSQL分会
192次阅读
2025-05-06 10:21:13
华象新闻 | PostgreSQL 18 Beta 1、17.5、16.9、15.13、14.18、13.21 发布
严少安
170次阅读
2025-05-09 11:34:10
PG生态赢得资本市场青睐:Databricks收购Neon,Supabase融资两亿美元,微软财报点名PG
老冯云数
170次阅读
2025-05-07 10:06:22
SQL 优化之 OR 子句改写
xiongcc
152次阅读
2025-04-21 00:08:06
告别老旧mysql_fdw,升级正当时
NickYoung
128次阅读
2025-04-29 11:15:18
PostgreSQL中文社区亮相于第八届数字中国峰会
PostgreSQL中文社区
121次阅读
2025-05-07 10:06:20
PostgreSQL的dblink扩展模块使用方法
szrsu
116次阅读
2025-04-24 17:39:30