ITPub博客

首页 > 数据库 > Oracle > 通过dbms_utility实现对rdba的转换

通过dbms_utility实现对rdba的转换

原创 Oracle 作者:linetsam 时间:2010-08-14 10:00:41 0 删除 编辑
利用dbms_utility,根据rdba得到块所在的数据文件编号和块编号[@more@]

1、Dump block得到rdba

Sql> alter system dump datafile 7 block min 12 block max 12;

Start dump data blocks tsn: 8 file#: 7 minblk 12 maxblk 12

buffer tsn: 8 rdba: 0x01c0000c (7/12)

2、通过rdba得到块所在的数据文件及块的编号。

Select to_number('01c0000c','xxxxxxxxxxxxxxxxxx') from dual;

29360140

得到文件编号:

SQL> select dbms_utility.data_block_address_file(29360140) from dual;

DBMS_UTILITY.DATA_BLOCK_ADDRESS_FILE(29360140)

----------------------------------------------

7

得到块编号:

SQL> select dbms_utility.data_block_address_block(29360140) from dual;

DBMS_UTILITY.DATA_BLOCK_ADDRESS_BLOCK(29360140)

-----------------------------------------------

12

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/56630/viewspace-1036778/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 使用BBED修改块
请登录后发表评论 登录
全部评论

注册时间:2008-09-16

  • 博文量
    20
  • 访问量
    43136