1.基础内容:
ALTER SESSION SET EVENTS 'immediate trace name buffers level n';
n取值意义:
1 只转储buffer header.
2 在level 1的基础上再转储数据块头。
3 在level 2的基础上再转储数据块内容。
4 转储buffer header和hash chain.
5 在level 1的基础上再转储数据块头和hash chain.
6 在level 2的基础上再转储数据块内容和hash chain.
8 转储buffer header和hash chain以及users/waiters链表。
9 在level 1的基础上再转储数据块头、hash chain以及users/waiters链表。
10 在level 2的基础上再转储数据块内容、hash chain以及users/waiters链表 2.刷新buffer cache
alter system flush buffer_cache; 3.导出数据块的内容
#确定表所对应的object_id
select object_id from dba_objects where object_name='T01';
object_id
-------------
51780 4.将数据读入到buffer cache
select * from t01; 5.dump出buffer cache
ALTER SESSION SET EVENTS 'immediate trace name buffers level 3';
当前的trace 文件位置:
> oradebug setmypid;.
> oradebug tracefile_name; 6.通过object_id 在dump文件中寻找表对应的块
BH (000007FF087EECC8) file#: 1 rdba: 0x0040ed92 (1/60818) class: 1 ba: 000007FF08636000
set: 3 blksize: 8192 bsi: 0 set-flg: 2 pwbcnt: 0
dbwrid: 0 obj: 51780 objn: 51780 tsn: 0 afn: 1
hash: [9bf53d8,feee108] lru: [97e7a88,57f7108]
ckptq: [NULL] fileq: [NULL] objq: [97e7af8,e3d6dd8]
st: XCURRENT md: NULL tch: 4
flags: only_sequential_access
LRBA: [0x0.0.0] HSCN: [0xffff.ffffffff] HSUB: [65535]
buffer tsn: 0 rdba: 0x0040ed92 (1/60818)
scn: 0x0000.000a213e seq: 0x04 flg: 0x06 tail: 0x213e0604
frmt: 0x02 chkval: 0xf9a7 type: 0x06=trans data
Hex dump of block: st=0, typ_found=1 .......
data_block_dump,data header at 0x44d005c
===============
tsiz: 0x1fa0
hsiz: 0x1a
pbl: 0x044d005c
bdba: 0x0040ed92
76543210
flag=--------
ntab=1
nrow=4
frre=3
fsbo=0x1a
fseo=0x1e42
avsp=0x1f09
tosp=0x1f09
0xe:pti[0] nrow=4 offs=0
0x12:pri[0] offs=0x1eb2
0x14:pri[1] offs=0x1ea6
0x16:pri[2] offs=0x1e42
0x18:pri[3] sfll=-1
block_row_dump:
tab 0, row 0, @0x1eb2
tl: 13 fb: --H-FL-- lb: 0x1 cc: 2
col 0: [ 2] c1 02
col 1: [ 6] 6f 72 61 63 6c 65
tab 0, row 1, @0x1ea6
tl: 12 fb: --H-FL-- lb: 0x1 cc: 2
col 0: [ 2] c1 02
col 1: [ 5] 6d 79 73 71 6c
tab 0, row 2, @0x1e42
tl: 100 fb: --H-FL-- lb: 0x1 cc: 2
col 0: [ 2] c1 02
col 1: [93]
6d 79 73 71 6c 6f 72 61 63 6c 65 6d 79 73 71 6c 6f 72 61 63 6c 65 6d 79 73
71 6c 6f 72 61 63 6c 65 6d 79 73 71 6c 6f 72 61 63 6c 65 6d 79 73 71 6c 6f
72 61 63 6c 65 6d 79 73 71 6c 6f 72 61 63 6c 65 6d 79 73 71 6c 6f 72 61 63
6c 65 6d 79 73 71 6c 6f 72 61 63 6c 65 6d 79 73 71 6c 相关字段简要说明:
|-------obj:51780 表示object_id
|
|-------class表示该buffer header所对应的数据块的类型,具体的值与含义的对应为:
| 1=data block;
| 2=sort block;
| 3=save undo block;
| 4=segment header;
| 5=save undo header;
| 6=free list;
| 7=extent map;
| 8=1st level bmb;
| 9=2nd level bmb;
| 10=3rd level bmb;
| 11=bitmap block;
| 12=bitmap index block;
| 13=unused;
| 14=undo header;
| 15=undo block。
|
|-------rdba: 0x0040ed92 (1/60818)表示该对象所对应的数据块在磁盘数据文件上的地址为 1号文件,60818块
| #确定表所在文件及数据块
| select
| rowid,
| dbms_rowid.rowid_relative_fno(rowid) REL_FNO,--File id
| dbms_rowid.rowid_block_number(rowid) BLOCK_NO,--Block number
| dbms_rowid.rowid_row_number(rowid) ROW_NO,
| id
| from t01;
|
| ROWID REL_FNO BLOCK_NO ROW_NO ID
| ------------------ ---------- ---------- ---------- ----------
| AAAMpEAABAAAO2SAAA 1 60818 0 0
| AAAMpEAABAAAO2SAAB 1 60818 1 1
| AAAMpEAABAAAO2SAAC 1 60818 2 1

参考blog:http://blog.csdn.net/orion61/article/details/8515340

dump buffer cache的更多相关文章

  1. 相克军_Oracle体系_随堂笔记005-Database buffer cache

    本章主要阐述SGA中的Database buffer cache. Buffer cache { 1.pin (读写瞬间的状态) 2.clean 3.dirty 4.unused } --Databa ...

  2. Buffer cache hit ratio性能计数器真的可以作为内存瓶颈的判断指标吗?

    Buffer cache hit ratio官方是这么解释的:“指示在缓冲区高速缓存中找到而不需要从磁盘中读取的页的百分比.” Buffer cache hit ratio被很多人当做判断内存的性能指 ...

  3. Buffer Cache

    Buffer Cache Buffer Cache是SGA区中专门用于存放从数据文件中读取的的数据块拷贝的区域.Oracle进程如果发现需要访问的数据块已经在buffer cache中,就直接读写内存 ...

  4. Oracle buffer cache

    Buffer Cache buffer cache 结构图 HASH链 ORACLE使用HASH算法,把buffer cache中每个buffer的buffer header串联起来,组成多条hash ...

  5. Oracle优化 -- 关于Database Buffer Cache相关参数DB_CACHE_SIZE的优化设置

    select size_for_estimate, buffers_for_estimate ,ESTD_PHYSICAL_READ_factor,ESTD_PHYSICAL_READS from v ...

  6. 【转】Linux 查看内存(free buffer cache)

    转自:http://elf8848.iteye.com/blog/1995638 Linux下如何查内存信息,如内存总量.已使用量.可使用量.经常使用Windows操作系统的朋友,已经习惯了如果空闲的 ...

  7. 配置和使用buffer cache

    存放从磁盘读取的数据.排序和并行读不会使用buffer cache 可以从v$db_cache_advice或者buffer cache的命中率来检查buffer cache设置是否合理 查看v$db ...

  8. buffer cache中,各个object对象占用的buffer blocks

    buffer cache中,各个object对象占用的buffer blocks: COLUMN OBJECT_NAME FORMAT A40 COLUMN NUMBER_OF_BLOCKS FORM ...

  9. Linux-内存管理机制、内存监控、buffer/cache异同

    在Linux中经常发现空闲内存很少,似乎所有的内存都被系统占用了,表面感觉是内存不够用了,其实不然.这是Linux内存管理的一个优秀特性,主要特点是,无论物理内存有多大,Linux 都将其充份利用,将 ...

随机推荐

  1. Arrays

    Arrays:用于操作数组对象的工具类,里面都是静态方法. asList方法:将数组转换成list集合. String[] arr = {"abc","kk", ...

  2. 2014款Macbook Air安装单独X64 Win7系统

    之所以写出来,是因为网上大多是用BootCamp安装双系统的,安装单独Win7的教程少之又少,然后大多数还写得不清不楚,所以折腾了一阵子.其实装好之后,还是觉得挺简单的. 我主要参考了两篇文章,链接如 ...

  3. 凸包(Convex Hull)构造算法——Graham扫描法

    凸包(Convex Hull) 在图形学中,凸包是一个非常重要的概念.简明的说,在平面中给出N个点,找出一个由其中某些点作为顶点组成的凸多边形,恰好能围住所有的N个点. 这十分像是在一块木板上钉了N个 ...

  4. 关于conversation generation的论文笔记

    对话模型此前的研究大致有三个方向:基于规则.基于信息检索.基于机器翻译.基于规则的对话系统,顾名思义,依赖于人们周密设计的规则,对话内容限制在特定领域下,实际应用如智能客服,智能场馆预定系统.基于信息 ...

  5. cordova android ios

    一 . cordova android 中js 调用JAVA 方法: 二 . cordova ios --->js 调用object (一); 三 .cordova ios --->OC ...

  6. WF4.0 自定义CodeActivity与Bookmark<第三篇>

    一.自定义CodeActivity CodeActivity用于自定义一段代码,可实现你自己写的任意功能. 要注意的有两点: 1.自定义CodeActivity必须继承自CodeActivity; 2 ...

  7. .NET平台下,关于数据持久层框架

    在.NET平台下,关于数据持久层框架非常多,本文主要对如下几种做简要的介绍并推荐一些学习的资源: 1.NHibernate 2.NBear 3.Castle ActiveRecord 4.iBATIS ...

  8. java 通用的返回类

    package com.eshore.pdip.mobile.phone.vo; import java.io.Serializable; import java.util.HashMap; impo ...

  9. Hadoop的shell脚本分析

    你会发现hadoop-daemon.sh用于启动单独的本机节点 而hadoop-daemons.sh 会批量的ssh到别的机器启动 前记: 这些天一直学习hadoop,学习中也遇到了许多的问题,主要是 ...

  10. my vimrc

    runtime! debian.vim "设置编码 ,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936 ,ucs-bom,chinese "语言 ...