数据库管理-第224期 23ai:优先级事务-03(20240729)

来源:这里教程网 时间:2026-03-03 20:25:55 作者:

数据库管理-第224期 23ai:优先级事务-03(20240729)

作者:胖头鱼的鱼缸(尹海文) Oracle ACE Pro: Database(Oracle与MySQL) PostgreSQL ACE Partner 10年数据库行业经验,现主要从事数据库服务工作 拥有OCM 11g/12c/19c、MySQL 8.0 OCP、Exadata、CDP等认证 墨天轮MVP、年度墨力之星,ITPUB认证专家、专家百人团成员,OCM讲师,PolarDB开源社区技术顾问,HaloDB外聘技术顾问,OceanBase观察团成员,青学会MOP技术社区(青年数据库学习互助会)技术顾问 圈内拥有“总监”、“保安”、“国产数据库最大敌人”等称号,非著 名社恐(社交恐怖分子) 公众号:胖头鱼的鱼缸;CSDN:胖头鱼的鱼缸(尹海文);墨天轮:胖头鱼的鱼缸;ITPUB:yhw1809。 除授权转载并标明出处外,均为“非法”抄袭

因为之前的23c内测版没有优先级事务这一功能和23ai Free版本因为版本限制无法修改相关参数,耽搁了一段时间。但是上周末23.5 for Engineered Systems已经放出,可以通过一些方法安装数据库,因此这期开始继续实战优先级事务。

1 准备测试数据

create user test identified by test;grant connect,resource to test;alter user test default tablespace users quota unlimited on users;
conn test/test@127.0.0.1:1521/pdbprod1create table test (id number primary key,name varchar2(20));insert into test values (1,'yhw');insert into test values (2,'sky');insert into test values (3,'23ai');commit;

image.png

2 设置参数

ALTER SYSTEM SET "priority_txns_mode"="ROLLBACK";ALTER SYSTEM SET priority_txns_high_wait_target = 10;ALTER SYSTEM SET priority_txns_medium_wait_target = 10;

3 实战测试

案例1

session 1:

ALTER SESSION SET "txn_priority" = "LOW";update test set name='23c' where id=3;

session 2:

ALTER SESSION SET "txn_priority" = "MEDIUM";set timing onupdate test set name='23c-old' where id=3;

image.png image.png 这里可以看到session 2等待约10s后执行成功,session 1仍可提交,但session 2提交后,session 1读取内容虽session 2提交内容变化。

案例2

重置环境:

update test set name='23ai' where id=3;commit;

session 1:

ALTER SESSION SET "txn_priority" = "LOW";update test set name='23c' where id=3;

session 2:

ALTER SESSION SET "txn_priority" = "MEDIUM";set timing onupdate test set name='23c-old' where id=3;

session 3:

ALTER SESSION SET "txn_priority" = "HIGH";set timing onupdate test set name='23ai-new' where id=3;

image.png image.png image.png 在这里看到拥有HIGH优先级的session 3等待了约10s就提交。session 2一直卡主,只能人工终止执行。session 1尝试commit时抛出与优先级事务相关的报错,再次DML操作时提示需要先rollback。

总结

本期对优先级事务进行了实操测试,演示并验证了相关特性。 老规矩,知道写了些啥。

相关推荐

热文推荐