oracle数据库的dump,Oracle使用dump转储数据块

在对Oracle做一些比较内核的研究时,会用需要用到dump命令把数据库中的信息转储到trace文件中。本文简单介绍使用dump命令把数据块中的信息转储到trace文件中。

实验环境:rhel7.2+11.2.0.4

语法:

alter system dump datafile {File no} block {Block no};

alter system dump datafile 4 block 129;

alter system dump datafile {File no} block min {Block min} block max {Block max};

alter system dump datafile 4 block min 129 block max 133;

alter system dump datafile '{name}' block {Block no};

alter system dump datafile '{name}' block min {Block min} block max {Block max};

1、创建测试表zx@ORA11G>drop table t;

Table dropped.

zx@ORA11G>create table t as select * from dual;

Table created.

zx@ORA11G>select * from t;

D

-

X

X

X

3 rows selected.

2、查询数据表所在的数据块号zx@ORA11G>select dbms_rowid.ROWID_RELATIVE_FNO(rowid),dbms_rowid.ROWID_BLOCK_NUMBER(rowid) from t;

DBMS_ROWID.ROWID_RELATIVE_FNO(ROWID) DBMS_ROWID.ROWID_BLOCK_NUMBER(ROWID)

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

4    37771

4    37771

4    37771

3 rows selected.

从上面的查询中可以看到三条数据都存储在4号文件的37771块上。

3、使用dump命令转储块信息到trace文件中,并找到相应的trace文件zx@ORA11G>alter system dump datafile 4 block 37771;

System altered.

zx@ORA11G>select value from v$diag_info where name='Default Trace File';

VALUE

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

/u01/app/oracle/diag/rdbms/ora11g/ora11g/trace/ora11g_ora_5332.trc

4、查看trace文件中的内容

713974a88a474a702308aa7fc3a1e92d.png

190f063e0175ea23a9baf49725c936e5.png

上面截取了一些信息:包含表的object_id ,表上的事务槽信息、表中的三行数据的详细信息等。

转储出来的trace文件包含大量的信息,如果能看懂并分析这样的trace文件,说明向大师又迈近了一步。

不同版本对数据库dump出来的trace文件,出处有所不同,可能是从磁盘也可能是从buffer cache中,有兴趣的同学可以自行测试。

参考:《Oracle

Core Essential Internals for DBAs and Developers》

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值