Oracle数据库数据恢复、性能优化

找回密码
注册
搜索
热搜: 活动 交友 discuz
发新帖

351

积分

0

好友

8

主题
1#
发表于 2012-5-11 11:06:06 | 查看: 13218| 回复: 13
alter system dump datafile n block m;

1)请问这条命令是从内存dump数据块还是从硬盘dump数据块呢?
2)另外这里的datafile n是指绝对文件号还是指相对文件号啊?
2#
发表于 2012-5-11 20:43:17
ODM TEST:

SQL> select file#,name, RFILE# from v$datafile;

   FILE# NAME                                                             RFILE#
-------- ------------------------------------------------------------ ----------
       1 /s01/oradata/G10R25/datafile/o1_mf_system_7ch7d4mn_.dbf               1
       2 /s01/oradata/G10R25/datafile/o1_mf_undotbs1_7ch7d4nt_.dbf             2
       3 /s01/oradata/G10R25/datafile/o1_mf_sysaux_7ch7d4n2_.dbf               3
       4 /s01/oradata/G10R25/datafile/o1_mf_users_7ch7d4nx_.dbf                4
       5 /s01/oradata/G10R25/datafile/o1_mf_example_7ch7f9vx_.dbf              5
       6 /s01/oradata/G10R25/datafile/o1_mf_bct_test_7tgwoyyd_.dbf             6
       7 /s01/oradata/G10R25/datafile/o1_mf_bigs_7tnktkkv_.dbf              1024

7 rows selected.

SQL> oradebug setmypid;
Statement processed.

SQL> alter system dump datafile 1024 block 10;

System altered.



SQL> oradebug tracefile_name;
/s01/admin/G10R25/udump/g10r25_ora_23969.trc

Error: alter system dump datafile/tempfile: invalid input file # 1024

==> dump datafile block 应当使用 absolute FILE No 绝对文件号



SQL> update tv set t1=rpad('MACLEAN',3000,'@');

1 row updated.


SQL> select DIRTY,status from v$bh where file#=1  and block#=66930;

D STATUS
- -------
N cr
N cr
Y xcur


SQL> alter system dump datafile 1 block 66930;

System altered.

SQL> oradebug setmypid;
Statement processed.
SQL> oradebug tracefile_name;
/s01/admin/G10R25/udump/g10r25_ora_24004.trc


Start dump data blocks tsn: 0 file#: 1 minblk 66930 maxblk 66930
buffer tsn: 0 rdba: 0x00410572 (1/66930)
scn: 0x0000.001e1b06 seq: 0x01 flg: 0x00 tail: 0x1b060601
frmt: 0x02 chkval: 0x0000 type: 0x06=trans data
Hex dump of block: st=0, typ_found=1

tl: 3006 fb: --H-FL-- lb: 0x2  cc: 1
col  0: [3000]
4d 41 43 4c 45 41 4e 40 40 40 40


==》 dump datafile  获得的是Current Block

回复 只看该作者 道具 举报

3#
发表于 2012-5-12 10:41:23
谢谢刘大,不过我的实验结果和你的不一样:

drop table t;

create table t(processed_flag varchar2(1)) tablespace users;

insert into t values('N');

insert into t values('Y');

commit;

select * from t;

insert into t values('A');

--在另外一个会话查询t以生成一致块

select dbms_rowid.rowid_relative_fno(rowid) REL_FNO,dbms_rowid.rowid_block_number(rowid) BLOCKNO from t;

select file#,block#,status from v$bh where file# = 4 and block#=539;

FILE#        BLOCK#        STATUS
4        539        xcur
4        539        cr
4        539        cr


alter system dump datafile 4 block 531;

查看trace文件:
Block dump from cache:
Dump of buffer cache at level 4 for tsn=4, rdba=16777755
BH (0xe4fae4b8) file#: 4 rdba: 0x0100021b (4/539) class: 1 ba: 0xe479e000
  set: 20 pool 3 bsz: 8192 bsi: 0 sflg: 2 pwc: 29,19
  dbwrid: 0 obj: 74941 objn: 74941 tsn: 4 afn: 4 hint: f
  hash: [0xe4f94958,0x124980b10] lru: [0xe4fae6d0,0xe4fae470]
  ckptq: [NULL] fileq: [NULL] objq: [NULL]
  st: CR md: NULL tch: 1
  cr: [scn: 0x0.1a6e6f],[xid: 0x7.1a.418],[uba: 0xc0059e.ec.8],[cls: 0x0.1a6e6f],[sfl: 0x0],[lc: 0x0.1a6e6f]
  flags: only_sequential_access
  cr pin refcnt: 0 sh pin refcnt: 0
BH (0xe4f948a8) file#: 4 rdba: 0x0100021b (4/539) class: 1 ba: 0xe44e8000
  set: 19 pool 3 bsz: 8192 bsi: 0 sflg: 2 pwc: 32,19
  dbwrid: 0 obj: 74941 objn: 74941 tsn: 4 afn: 4 hint: f
  hash: [0xe3f880a8,0xe4fae568] lru: [0xe4f94ac0,0xe4f94860]
  ckptq: [NULL] fileq: [NULL] objq: [NULL]
  st: CR md: NULL tch: 1
  cr: [scn: 0x0.1a6e6e],[xid: 0x7.1a.418],[uba: 0xc0059e.ec.8],[cls: 0x0.1a6e6e],[sfl: 0x0],[lc: 0x0.1a6e6e]
  flags: only_sequential_access
  cr pin refcnt: 0 sh pin refcnt: 0
BH (0xe3f87ff8) file#: 4 rdba: 0x0100021b (4/539) class: 1 ba: 0xe3396000
  set: 17 pool 3 bsz: 8192 bsi: 0 sflg: 2 pwc: 20,19
  dbwrid: 0 obj: 74941 objn: 74941 tsn: 4 afn: 4 hint: f
  hash: [0xecfd9298,0xe4f94958] lru: [0xe3f88210,0xe3f87fb0]
  obj-flags: object_ckpt_list
  ckptq: [0xe3f877a8,0xe3f88258] fileq: [0x12320f880,0x12320f880] objq: [0x120f316e8,0x120f316e8]
  st: XCURRENT md: NULL tch: 3
  flags: buffer_dirty redo_since_read
  LRBA: [0x1a.a6c4.0] LSCN: [0x0.1a6e67] HSCN: [0x0.1a6e6f] HSUB: [1]
  cr pin refcnt: 0 sh pin refcnt: 0
Block dump from disk:
buffer tsn: 4 rdba: 0x0100021b (4/539)
scn: 0x0000.00000000 seq: 0x01 flg: 0x05 tail: 0x00000001
frmt: 0x02 chkval: 0xa41b type: 0x00=unknown
Hex dump of block: st=0, typ_found=0
Dump of memory from 0x00002B3B78047000 to 0x00002B3B78049000
2B3B78047000 0000A200 0100021B 00000000 05010000  [................]
2B3B78047010 0000A41B 00000000 00000000 00000000  [................]
2B3B78047020 00000000 00000000 00000000 00000000  [................]
        Repeat 508 times
2B3B78048FF0 00000000 00000000 00000000 00000001  [................]
Dump of memory from 0x00002B3B78047014 to 0x00002B3B78048FFC
2B3B78047010          00000000 00000000 00000000      [............]
2B3B78047020 00000000 00000000 00000000 00000000  [................]
        Repeat 508 times
2B3B78048FF0 00000000 00000000 00000000           [............]
End dump data blocks tsn: 4 file#: 4 minblk 539 maxblk 539
--可以见到这里没有找到插入的数据

alter system flush buffer_cache;
alter system dump datafile 4 block 531;

查看trace文件:
Block header dump:  0x0100021b
Object id on Block? Y
seg/obj: 0x124bd  csc: 0x00.1a6e6f  itc: 2  flg: E  typ: 1 - DATA
     brn: 0  bdba: 0x1000218 ver: 0x01 opc: 0
     inc: 0  exflg: 0

Itl           Xid                  Uba         Flag  Lck        Scn/Fsc
0x01   0x0005.010.00000571  0x00c0066a.01bd.20  C---    0  scn 0x0000.001a6e68
0x02   0x0007.01a.00000418  0x00c0059e.00ec.08  ----    1  fsc 0x0000.00000000
bdba: 0x0100021b
data_block_dump,data header at 0x2b3b78047064
===============
tsiz: 0x1f98
hsiz: 0x18
pbl: 0x2b3b78047064
     76543210
flag=--------
ntab=1
nrow=3
frre=-1
fsbo=0x18
fseo=0x1f89
avsp=0x1f65
tosp=0x1f65
0xe:pti[0]      nrow=3  offs=0
0x12:pri[0]     offs=0x1f93
0x14:pri[1]     offs=0x1f8e
0x16:pri[2]     offs=0x1f89
block_row_dump:
tab 0, row 0, @0x1f93
tl: 5 fb: --H-FL-- lb: 0x0  cc: 1
col  0: [ 1]  4e
tab 0, row 1, @0x1f8e
tl: 5 fb: --H-FL-- lb: 0x0  cc: 1
col  0: [ 1]  59
tab 0, row 2, @0x1f89
tl: 5 fb: --H-FL-- lb: 0x2  cc: 1
col  0: [ 1]  41
end_of_block_dump
End dump data blocks tsn: 4 file#: 4 minblk 539 maxblk 539
--这里找到了插入的数据

可见alter system dump应该是从硬盘上取的数据,刘大怎么看?

回复 只看该作者 道具 举报

4#
发表于 2012-5-12 10:42:03
忘记说了,我的版本是11.2.0.1

回复 只看该作者 道具 举报

5#
发表于 2012-5-12 10:45:37
"为什么 这里找到了插入的数据  
可见alter system dump应该是从硬盘上取的数据?"

什么逻辑 得到了这个结论?

回复 只看该作者 道具 举报

6#
发表于 2012-5-12 10:49:53

回复 5# 的帖子

alter system flush buffer_cache;
alter system dump datafile 4 block 531;

因为flush buffer到硬盘后就可以dump出数据,而flush之前dump出来是没有数据的,如果是从当前块读取的数据不应该会出现这种情况吧。

回复 只看该作者 道具 举报

7#
发表于 2012-5-12 11:01:01
SQL> select * from V$version;

BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bi
PL/SQL Release 10.2.0.5.0 - Production
CORE    10.2.0.5.0      Production
TNS for Linux: Version 10.2.0.5.0 - Production
NLSRTL Version 10.2.0.5.0 - Production






SQL> create table t(processed_flag varchar2(1)) tablespace users;

Table created.

SQL> insert into t values('N');

1 row created.

SQL> commit;

Commit complete.

SQL> alter system checkpoint;

System altered.




SQL> oradebug setospid 16684;
Oracle pid: 5, Unix process pid: 16684, image: oracle@vrh8.oracle.com (DBW0)
SQL> oradebug suspend;
Statement processed.


把 dbwr hang住 这会导致  脏块无法写出


SQL> insert into t values('A');

1 row created.


SQL> select dbms_rowid.rowid_block_number(rowid),dbms_rowid.rowid_relative_fno(rowid) from t;   

DBMS_ROWID.ROWID_BLOCK_NUMBER(ROWID) DBMS_ROWID.ROWID_RELATIVE_FNO(ROWID)
------------------------------------ ------------------------------------
                              197780                                    4
                              197780                                    4
                                                         
                                                         
                                                         
SQL> alter system dump datafile 4 block 197780;

System altered.

SQL> oradebug setmypid;
Statement processed.
SQL> oradebug tracefile_name;
/s01/admin/G10R25/udump/g10r25_ora_26285.trc


tab 0, row 0, @0x1f93
tl: 5 fb: --H-FL-- lb: 0x1  cc: 1
col  0: [ 1]  4e
tab 0, row 1, @0x1f8e
tl: 5 fb: --H-FL-- lb: 0x2  cc: 1
col  0: [ 1]  41
end_of_block_dump




SQL> select dump(processed_flag,16) from t;

DUMP(PROCESSED_FLAG,16)
--------------------------------------------------------------------------------
Typ=1 Len=1: 4e
Typ=1 Len=1: 41

回复 只看该作者 道具 举报

8#
发表于 2012-5-12 11:12:03
谢谢刘大,那我那个实验为什么第一次dump出来没有数据的,而flush之后就可以dump出数据,会不会是版本问题?

回复 只看该作者 道具 举报

9#
发表于 2012-5-12 16:26:46

问刘大………?

16:15:48 SYS@orcl>create table t(processed_flag varchar2(1)) tablespace users;

表已创建。

16:15:58 SYS@orcl>
16:15:58 SYS@orcl> insert into t values('N');

已创建 1 行。

16:16:08 SYS@orcl>commit;

提交完成。

16:16:14 SYS@orcl>alter system checkpoint;

系统已更改。

16:16:21 SYS@orcl>
16:16:21 SYS@orcl> insert into t values('A');

已创建 1 行。

16:16:47 SYS@orcl>select dbms_rowid.rowid_block_number(rowid),dbms_rowid.rowid_r
elative_fno(rowid) from t;

DBMS_ROWID.ROWID_BLOCK_NUMBER(ROWID) DBMS_ROWID.ROWID_RELATIVE_FNO(ROWID)
------------------------------------ ------------------------------------
                                7348                                    4
                                7348                                    4

16:16:58 SYS@orcl>alter system dump datafile 4 block 7348;

系统已更改。

16:18:08 SYS@orcl>oradebug setmypid;
已处理的语句
16:18:21 SYS@orcl>oradebug tracefile_name;
e:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_ora_6004.trc

Block header dump:  0x01001cb4
Object id on Block? Y
seg/obj: 0x1274e  csc: 0x00.1452fb  itc: 2  flg: E  typ: 1 - DATA
     brn: 0  bdba: 0x1001cb0 ver: 0x01 opc: 0
     inc: 0  exflg: 0

Itl           Xid                  Uba         Flag  Lck        Scn/Fsc
0x01   0x0002.021.000003d0  0x00c0023d.00c4.2f  --U-    1  fsc 0x0000.001452fd
0x02   0x0000.000.00000000  0x00000000.0000.00  ----    0  fsc 0x0000.00000000
bdba: 0x01001cb4
data_block_dump,data header at 0x8941264
===============
tsiz: 0x1f98
hsiz: 0x14
pbl: 0x08941264
     76543210
flag=--------
ntab=1
nrow=1
frre=-1
fsbo=0x14
fseo=0x1f93
avsp=0x1f7b
tosp=0x1f7b
0xe:pti[0]        nrow=1        offs=0
0x12:pri[0]        offs=0x1f93
block_row_dump:
tab 0, row 0, @0x1f93
tl: 5 fb: --H-FL-- lb: 0x1  cc: 1
col  0: [ 1]  4e
end_of_block_dump
End dump data blocks tsn: 4 file#: 4 minblk 7348 maxblk 7348

16:18:33 SYS@orcl>select dump(processed_flag,16) from t;

DUMP(PROCESSED_FLAG,16)
--------------------------------------------------------------------------------

Typ=1 Len=1: 4e
Typ=1 Len=1: 41

col  0: [ 1]  4e
有此数据,但是没有41对应的dump结果?请解释…………………………

而commit 之后,dump结果:
flag=--------
ntab=1
nrow=2
frre=-1
fsbo=0x16
fseo=0x1f8e
avsp=0x1f70
tosp=0x1f70
0xe:pti[0] nrow=2 offs=0
0x12:pri[0] offs=0x1f93
0x14:pri[1] offs=0x1f8e
block_row_dump:
tab 0, row 0, @0x1f93
tl: 5 fb: --H-FL-- lb: 0x1  cc: 1
col  0: [ 1]  4e
tab 0, row 1, @0x1f8e
tl: 5 fb: --H-FL-- lb: 0x2  cc: 1
col  0: [ 1]  41
end_of_block_dump
End dump data blocks tsn: 4 file#: 4 minblk 7348 maxblk 7348


[ 本帖最后由 liuxbgiant 于 2012-5-12 16:35 编辑 ]

回复 只看该作者 道具 举报

10#
发表于 2012-5-12 19:46:01
FOR 11G


SQL>  select * from v$version;

BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
PL/SQL Release 11.2.0.3.0 - Production
CORE    11.2.0.3.0      Production
TNS for Linux: Version 11.2.0.3.0 - Production
NLSRTL Version 11.2.0.3.0 - Production


SQL> alter system checkpoint;

System altered.

SQL>  select ora_rowscn from t;

ORA_ROWSCN
----------
   2228203                  =>scn: 0x0000.0021ffeb
   2228203
   2228203

SQL>  insert into t values('X');

1 row created.

SQL> commit;

Commit complete.


SQL>   select ora_rowscn from t;

ORA_ROWSCN
----------
   2228327
   2228327
   2228327
   2228327

SQL>  alter system dump datafile 4 block  663;


System altered.


SQL>  oradebug setmypid;
Statement processed.


SQL>  oradebug tracefile_name
/s01/orabase/diag/rdbms/vprod/VPROD1/trace/VPROD1_ora_13521.trc


pin ktspbwh1: ktspfsrch dba 0x1000297:1 time 883713082
pin release       396 ktspbwh1: ktspfsrch dba 0x1000297:1

Block dump from cache:

Dump of buffer cache at level 4 for tsn=4 rdba=16777879
BH (0xa0f588d8) file#: 4 rdba: 0x01000297 (4/663) class: 1 ba: 0xa0cd2000
  set: 6 pool: 3 bsz: 8192 bsi: 0 sflg: 2 pwc: 28,19
  dbwrid: 0 obj: 77407 objn: 77407 tsn: 4 afn: 4 hint: f
  hash: [0xbada1a50,0xbada1a50] lru: [0xa0f58b38,0xa0f58848]
  obj-flags: object_ckpt_list
  ckptq: [0xbaf61b18,0xbaf61b18] fileq: [0xbaf61b98,0xbaf61b98] objq: [0xa0f59430,0xb42ac2c0] objaq: [0xa0f58b70,0xb42ac2a0]
  st: XCURRENT md: NULL fpin: 'ktspbwh2: ktspfmdb' tch: 10 le: 0x8cfe34b0
  flags: buffer_dirty block_written_once redo_since_read
  LRBA: [0x40.275.0] LSCN: [0x0.220065] HSCN: [0x0.220067] HSUB: [1]

  
Block dump from disk:

buffer tsn: 4 rdba: 0x01000297 (4/663)
scn: 0x0000.0021ffeb seq: 0x01 flg: 0x06 tail: 0xffeb0601
frmt: 0x02 chkval: 0x3966 type: 0x06=trans data
Hex dump of block: st=0, typ_found=1



0x16:pri[2]     offs=0x1f89
block_row_dump:
tab 0, row 0, @0x1f93
tl: 5 fb: --H-FL-- lb: 0x0  cc: 1
col  0: [ 1]  4e
tab 0, row 1, @0x1f8e
tl: 5 fb: --H-FL-- lb: 0x0  cc: 1
col  0: [ 1]  41
tab 0, row 2, @0x1f89
tl: 5 fb: --H-FL-- lb: 0x1  cc: 1
col  0: [ 1]  5a
end_of_block_dump


GLOBAL CACHE ELEMENT DUMP (address: 0x8cfe34b0):
  id1: 0x297 id2: 0x4 pkey: OBJ#77407 block: (4/663)
  lock: X rls: 0x0 acq: 0x0 latch: 6
  flags: 0x20 fair: 0 recovery: 0 fpin: 'ktspbwh2: ktspfmdb'
  bscn: 0x0.0 bctx: (nil) write: 0 scan: 0x0
  lcp: (nil) lnk: [NULL] lch: [0xa0f58a08,0xa0f58a08]
  seq: 10 hist: 113 424 180 113 424 180 143:0 325 352 32
  LIST OF BUFFERS LINKED TO THIS GLOBAL CACHE ELEMENT:
    flg: 0x02200001 state: XCURRENT tsn: 4 tsh: 10
      addr: 0xa0f588d8 obj: 77407 cls: DATA bscn: 0x0.220067






scn: 0x0000.0021ffeb=> 2228203



summary :

11g中加强了 alter system dump datafile block 命令,  该命令目前会  DUMP block 在cache中的 buffer header信息,  on disk的完成块信息FULL block, 若在RAC中还会dump该块的  GLOBAL CACHE ELEMENT。

因为只有" Block dump from disk " 从磁盘上转储的是完整的块输出, 所以看到的 行信息 和 10g中直接从cache中读取的dirty block的情况存在区别。

回复 只看该作者 道具 举报

11#
发表于 2012-5-14 22:23:00
看我的
session 1 :
SQL> create table wzh
  2  (
  3    A VARCHAR2(10)
  4  )
  5  tablespace WZH
  6    pctfree 10
  7    initrans 1
  8    maxtrans 255
  9    storage
10    (
11      initial 64K
12      minextents 1
13      maxextents unlimited
14    );

Table created.

SQL> insert into wzh a values ('a');-------------------此处没有提交

1 row created.

SQL> select dbms_rowid.rowid_block_number(rowid) bl,dbms_rowid.rowid_relative_fno(rowid)fi  from wzh;

        bl         fi                                                           
---------- ----------                                                           
       630          6  

session 2 :
SQL> select *from wzh;

no rows selected

SQL> alter system dump datafile 6 block 630;

System altered.

trace 文件:
Dump file d:\oracle\product\10.2.0\admin\wzh\udump\wzh_ora_5404.trc
Mon May 14 22:18:49 2012
ORACLE V10.2.0.1.0 - Production vsnsta=0
vsnsql=14 vsnxtr=3
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
Windows XP Version V5.1 Service Pack 3
CPU                 : 2 - type 586, 2 Physical Cores
Process Affinity    : 0x00000000
Memory (Avail/Total): Ph:2343M/3571M, Ph+PgF:3006M/5459M, VA:322M/2047M
Instance name: wzh

Redo thread mounted by this instance: 1

Oracle process number: 23

Windows thread id: 5404, image: ORACLE.EXE (SHAD)


*** 2012-05-14 22:18:49.343
*** ACTION NAME:() 2012-05-14 22:18:49.328
*** MODULE NAME:(SQL*Plus) 2012-05-14 22:18:49.328
*** SERVICE NAME:(WZH) 2012-05-14 22:18:49.328
*** SESSION ID:(154.475) 2012-05-14 22:18:49.328
Start dump data blocks tsn: 7 file#: 6 minblk 630 maxblk 630
buffer tsn: 7 rdba: 0x01800276 (6/630)
scn: 0x0000.0070ccaa seq: 0x01 flg: 0x00 tail: 0xccaa0601
frmt: 0x02 chkval: 0x0000 type: 0x06=trans data
Hex dump of block: st=0, typ_found=1
Dump of memory from 0x5C726200 to 0x5C728200
5C726200 0000A206 01800276 0070CCAA 00010000  [....v.....p.....]
5C726210 00000000 00000001 0000D0D8 0070CCA5  [..............p.]
5C726220 00000000 00320002 01800271 00290003  [......2.q.....).]
5C726230 00000794 00800712 00280421 00000001  [........!.(.....]
5C726240 00000000 00000000 00000000 00000000  [................]
        Repeat 1 times
5C726260 00000000 00010100 0014FFFF 1F7B1F93  [..............{.]
5C726270 00001F7B 1F930001 00000000 00000000  [{...............]
5C726280 00000000 00000000 00000000 00000000  [................]
        Repeat 502 times
5C7281F0 00000000 2C000000 61010101 CCAA0601  [.......,...a....]
Block header dump:  0x01800276
Object id on Block? Y
seg/obj: 0xd0d8  csc: 0x00.70cca5  itc: 2  flg: E  typ: 1 - DATA
     brn: 0  bdba: 0x1800271 ver: 0x01 opc: 0
     inc: 0  exflg: 0

Itl           Xid                  Uba         Flag  Lck        Scn/Fsc
0x01   0x0003.029.00000794  0x00800712.0421.28  ----    1  fsc 0x0000.00000000
0x02   0x0000.000.00000000  0x00000000.0000.00  ----    0  fsc 0x0000.00000000

data_block_dump,data header at 0x5c726264
===============
tsiz: 0x1f98
hsiz: 0x14
pbl: 0x5c726264
bdba: 0x01800276
     76543210
flag=--------
ntab=1
nrow=1
frre=-1
fsbo=0x14
fseo=0x1f93
avsp=0x1f7b
tosp=0x1f7b
0xe:pti[0]        nrow=1        offs=0
0x12:pri[0]        offs=0x1f93
block_row_dump:
tab 0, row 0, @0x1f93
tl: 5 fb: --H-FL-- lb: 0x1  cc: 1
col  0: [ 1]  61--------------------------------------------虽然该session中查询不到结果,可是dump文件中看到了该值。
end_of_block_dump
End dump data blocks tsn: 7 file#: 6 minblk 630 maxblk 630



"==》 dump datafile  获得的是Current Block" ???

[ 本帖最后由 wzhihua 于 2012-5-14 22:28 编辑 ]

回复 只看该作者 道具 举报

12#
发表于 2012-5-14 22:26:01
SQL> select * from v$version;

BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod
PL/SQL Release 10.2.0.1.0 - Production
CORE    10.2.0.1.0      Production
TNS for 32-bit Windows: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production

回复 只看该作者 道具 举报

13#
发表于 2012-5-14 22:44:44

回复 12# 的帖子

这个 上面已经说明了 10g 中是 alter system dump datafile , 会直接转储cache中的 current block

在11g 中 加强了 alter system dump datafile block 命令,  该命令目前会  DUMP block 在cache中的 buffer header信息,  on disk的完成块信息FULL block, 若在RAC中还会dump该块的  GLOBAL CACHE ELEMENT。

回复 只看该作者 道具 举报

14#
发表于 2012-5-14 23:00:45
哦,sorry ,晕了,看到current block,可是想到的还是consistent block。一直以为跟你的解释不一致。
10g中就是把cache中的current block dump出来,明白了。

回复 只看该作者 道具 举报

您需要登录后才可以回帖 登录 | 注册

QQ|手机版|Archiver|Oracle数据库数据恢复、性能优化

GMT+8, 2024-11-15 18:01 , Processed in 0.055445 second(s), 21 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部
TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569