Typ=1 Len=1: 30 Typ=2 Len=3: c2,3,34 109465 1
Typ=1 Len=2: 32,30 Typ=2 Len=3: c2,3,35 109465 1
SQL> alter system flush buffer_cache;
System altered.
SQL> alter system dump datafile 1 block 109465;
System altered.
tl: 73 fb: --H-FL-- lb: 0x0 cc: 12
col 0: [ 1] 30
col 1: [ 3] c2 03 34
col 2: [ 5] 53 63 6f 74 74
col 3: [ 5] 54 69 67 65 72
col 4: [23]
73 63 6f 74 74 2e 74 69 67 65 72 40 65 78 61 6d 70 6c 65 2e 63 6f 6d
col 5: *NULL*
col 6: [ 7] 78 6d 05 15 01 01 01
col 7: [ 7] 49 54 5f 50 52 4f 47
col 8: [ 2] c3 06
col 9: *NULL*
col 10: [ 3] c2 02 04
col 11: [ 2] c1 3d
tab 0, row 1, @0x1ecc
tl: 70 fb: --H-FL-- lb: 0x2 cc: 12
col 0: [ 2] 32 30
col 1: [ 3] c2 03 35
col 2: [ 4] 4a 61 6e 65
col 3: [ 4] 4c 69 6f 6e
col 4: [21]
6a 61 6e 65 2e 6c 69 6f 6e 40 65 78 61 6d 70 6c 65 2e 63 6f 6d
col 5: *NULL*
col 6: [ 7] 78 6d 06 0b 01 01 01
col 7: [ 7] 49 54 5f 50 52 4f 47
col 8: [ 2] c3 06
col 9: *NULL*
col 10: [ 3] c2 02 04
col 11: [ 2] c1 3d
可以看到这里 ORA_ARCHIVE_STATE是实际存放在块里的row piece上的第一个字段,类型为varchar2(4000);
In-Database Archiving的限制:
§ ILM is not supported with OLTP table compression for in-database archiving. Segment-level ILM and compression is supported if partitioned on the ORA_ARCHIVE_STATE column.
ORA_ARCHIVE_STATE相关:
/* constants specifying ROW ARCHIVAL state */
archive_state_active constant varchar2(1) := ‘0’;
archive_state_archived constant varchar2(1) := ‘1’;
/*
* description – Given a value for the ORA_ARCHIVE_STATE column this
* function returns the mapping for the value.
*
* value – “0”, “1” or other values from the ORA_ARCHIVE_STATE column of
* a row archival enabled table
* returns either “archive_state_active” or “archive_state_archived”
*/