How to dump Oracle Data Block?

Often while doing instance tuning or sql tuning, Internal structure of a Oracle Data block is important to know. Moreover when system does not show a significant direction to do troubleshooting. In this blog, I am explaining to how to extract dump of a oracle data block.

dump shows following details which may be significant to find the rationale of problem of state of block:

contents of the block for the given datafile number and the block number
how the data is stored internally
list the contents of rows(Table Block) or index keys( Index Block)
extent map in segment header block
free extent pool in the undo segments header blocks
the SCN of the block (useful in complex recovery scenario)

To dump single block use following command:
alter system dump datafile block ;


To dump multiple block use following command:
alter system dump datafile block min block max ;


To dump the segment header block and the data block of a given segment:

select file_id, block_id, blocks

from dba_extents

where segment_name = 'TEST';


FILE_ID BLOCK_ID BLOCKS
---------- ---------- ----------
1 29081 8


To dump the segment header block
alter system dump datafile 1 block 29081;


To dump the data block next to the segment header
alter system dump datafile 1 block 29082


To dump both the blocks at the same time
alter system dump datafile 1 block min 29081 block max 29082;

Wait and watch, I will update this blog to have more example on how to investigate the dump of block.

With above method, Oracle will dump all info in a file in USER_DUMP_DIRECTORY, one can find the file with instance name and OSPID.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值