切换UNDO表空间--DDL使事务自动提交
来源:互联网 发布:软件系统设计方法 编辑:程序博客网 时间:2024/05/05 03:41
一个事务只能被指派被一个undo段服务,一个事务生成的撤销数据无法被分配到多个undo段中,但是一个undo段可以为多个事务服务。
今天一个切换UNDO表空间时,发现未提交的数据,在切换UNDO表空间后被自动提交了。
原因:切换undo表空间相当于执行ddl语句,会自动提交事务。1.会话1:执行DML操作后不提交,同时修改UNDO表空间。
SQL> set time on16:25:28 SQL> show parameter undo
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
undo_management string AUTO
undo_retention integer 900
undo_tablespace string test1_undo
16:25:36 SQL> select * from test;
A B
---------- --------------------
16:27:22 SQL> insert into test values(222,333);
1 row inserted
16:27:34 SQL> insert into test values(222,333);
1 row inserted
16:27:35 SQL> insert into test values(222,333);
1 row inserted
16:27:35 SQL> insert into test values(222,333);
1 row inserted
切换UNDO表空间--事先创建好。
System altered
16:28:58 SQL> show parameter undo
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
undo_management string AUTO
undo_retention integer 900
undo_tablespace string undotbs1
16:29:08 SQL>
即使执行ROLLBACK操作,数据无回退,也侧面证明了切换UNDO表空间时未提交的数据被提交了。
16:30:29 SQL> rollback;
Rollback complete
16:30:33 SQL> select * from test;
---------- --------------------
222 333
222 333
222 333
222 333
#######################################
会话2查询会话1的事务提交数据
之前不能查询原因是事务隔离等级。当前会话切换UNDO是DDL操作产生事务提交,但是切换UNDO表空间不会提交(影响)其它会话的未提交事务。
在会话1执行DML操作未提交,也未切换UNDO表空间时,查询不到数据。16:27:54 SQL> select * from test;
A B
---------- --------------------
16:27:55 SQL>
切换UNDO表空间后(16:28:02提交的),可以查询到数据。
16:29:14 SQL> select * from test;
A B
---------- --------------------
222 333
222 333
222 333
222 333
- 切换UNDO表空间--DDL使事务自动提交
- undo表空间切换
- 切换UNDO表空间
- 自动undo表空间模式下切换新的undo表空间
- undo表空间的切换
- undo表空间的切换
- oracle undo表空间切换
- Oracle 11g Undo 表空间切换
- 创建并切换UNDO表空间
- ORACLE在线切换undo表空间
- undo表空间的切换,常识
- Oracle切换undo表空间操作步骤
- ORACLE在线切换undo表空间
- ORACLE在线切换undo表空间
- DDL语句是否需要排他权限实验及DDL引起事务自动提交
- Oracle DDL自动提交
- oracle表空间---undo表空间切换
- 理解UNDO-3 事务提交
- C#语法笔记(一)
- 通过SQL语句查询
- 使用了Sitemesh的项目中整个My97DataPicker可能出现日期选择失效问题
- 在hive中query外部表的简单测试
- MySql使用全记录6 -----MySQL批量SQL插入性能优化
- 切换UNDO表空间--DDL使事务自动提交
- 初尝-Go之Redis
- Sicily 1935. 二叉树重建
- Android开发7:布局管理器4(网格布局GridLayout,绝对布局AbsoluteLayout)
- 用query()方法查询
- 申请Google map api v2 key
- mysqldump全备份脚本mysqlallbackup.sh-->(旧文档整理)
- 常用工具类总结
- JAVA调停者模式