Oracle 如何提交手册Cluster Table事务
2015-09-13 09:41
543 查看
环境遇到ora-00600 4000错误,该目的是参与cluster table,什么我这里有以下简单的模拟。以供参考!
++++创建一个测试表
?
++++blockdump内容
?
大家能够看到。这跟普通的data block的dump内容是有所区别的。由于这里涉及到cluster table。
以下来模拟下手工提交cluster table的事务。
+++++模拟事务不提交
?
这里我们能够看到对于这个未提交的事务XID为:3.17.1212 前面我们已经知道
測试表中的数据分布在3个block中,这里我模拟的情况是删除第3条数据。且不提交。通过bbed来实现手工
提交这个未提交事务,注意:第3条数据是在第3个block中,即174 block。
+++++首先改动表的itl等信息
?
我们能够看到,不管怎么改动,这个block通过bbed进行检測都报错。这里不是由于改动的不正确,而是由于
还须要改动cluster 上的Index信息。通过treedump 我们能够确认index block为file 6 block 187.
+++++ dump Index block
?
+++++ dump 内容例如以下
?
能够看到,该index block中还存在3个index entry信息。我们须要将第3条信息给删掉,首先计算一下offset:
?
+++++利用bbed改动 index block
?
到这里。我们完毕了Index Block的改动。最后我们再来校验一下前面的data block,你会发现已经ok了。例如以下:
BBED> set file 2 block 174
FILE# 2
BLOCK# 174
BBED> verify
DBVERIFY – Verification starting
FILE = /oracle/oradata/roger/sysaux01.dbf
BLOCK = 174
DBVERIFY – Verification complete
Total Blocks Examined : 1
Total Blocks Processed (Data) : 0
Total Blocks Failing (Data) : 0
Total Blocks Processed (Index): 0
Total Blocks Failing (Index): 0
Total Blocks Empty : 1
Total Blocks Marked Corrupt : 0
Total Blocks Influx : 0
Message 531 not found; product=RDBMS; facility=BBED
BBED>
+++++ 最后来验证下数据
?
到目前为止。整个模拟测试结束,以供参考!
++++创建一个测试表
?
?
以下来模拟下手工提交cluster table的事务。
+++++模拟事务不提交
?
測试表中的数据分布在3个block中,这里我模拟的情况是删除第3条数据。且不提交。通过bbed来实现手工
提交这个未提交事务,注意:第3条数据是在第3个block中,即174 block。
+++++首先改动表的itl等信息
?
还须要改动cluster 上的Index信息。通过treedump 我们能够确认index block为file 6 block 187.
+++++ dump Index block
?
?
?
?
BBED> set file 2 block 174
FILE# 2
BLOCK# 174
BBED> verify
DBVERIFY – Verification starting
FILE = /oracle/oradata/roger/sysaux01.dbf
BLOCK = 174
DBVERIFY – Verification complete
Total Blocks Examined : 1
Total Blocks Processed (Data) : 0
Total Blocks Failing (Data) : 0
Total Blocks Processed (Index): 0
Total Blocks Failing (Index): 0
Total Blocks Empty : 1
Total Blocks Marked Corrupt : 0
Total Blocks Influx : 0
Message 531 not found; product=RDBMS; facility=BBED
BBED>
+++++ 最后来验证下数据
?
相关文章推荐
- Oracle学习笔记20150913pl/sql编程包的写法
- 解决IE上登陆oracle OEM时报:“证书错误,导航已阻止”且无继续浏览的错误
- Oracle DBA神器之Toad
- Oracle DBA神器之Toad
- Python调用SqlPlus查询Oracle
- Oracle EBS WMS特征(一)
- oracle 存储过程 传参数,如果是希望传参值也被利用起来,存储过程里面虽有IN,但OUT必不可少。
- oracle linux dtrace
- oracle用户下执行crontab -e报错
- 【ORACLE】使用数据泵的生产环境impd,expdp数据迁移
- ORA-01033:oracle初始化或者关闭错误
- 分布式并行数据库将在 OLTP 领域促进去“Oracle”
- Oracle操作的部分ddl语句
- mysql oracle python连接
- Oracle性能分析3:TKPROF简介
- 关于oracle 使用存储过程
- linux已安装Oracle未安装实例
- 对oracle实例的内存(SGA和PGA)进行调整,优化数据库性
- 使用linux内存HugePages优化oracle内存区
- Oracle中的PLsql的符号解释大全