SQL> desc SYS_FBA_HIST_239635 --这个表记录的是指定时间范围内,数据变化的明细情况,可以看到里面有原表的所有字段。
Name Null? Type
----------------------------------------- -------- ----------------------------
RID VARCHAR2(4000)
STARTSCN NUMBER
ENDSCN NUMBER
XID RAW(8)
OPERATION VARCHAR2(1)
OWNER VARCHAR2(30)
OBJECT_NAME VARCHAR2(128)
SUBOBJECT_NAME VARCHAR2(30)
OBJECT_ID NUMBER
DATA_OBJECT_ID NUMBER
OBJECT_TYPE VARCHAR2(19)
CREATED DATE
LAST_DDL_TIME DATE
TIMESTAMP VARCHAR2(19)
STATUS VARCHAR2(7)
TEMPORARY VARCHAR2(1)
GENERATED VARCHAR2(1)
SECONDARY VARCHAR2(1)
NAMESPACE NUMBER
EDITION_NAME VARCHAR2(30)
SQL> desc SYS_FBA_DDL_COLMAP_239635 --这个表记录的是在指定时间范围内的DDL相关记录。
Name Null? Type
----------------------------------------- -------- ----------------------------
STARTSCN NUMBER
ENDSCN NUMBER
XID RAW(8)
OPERATION VARCHAR2(1)
COLUMN_NAME VARCHAR2(255)
TYPE VARCHAR2(255)
HISTORICAL_COLUMN_NAME VARCHAR2(255)
当然对于闪回归档来说,DDL如果涉及表字段的drop操作,就会有限制,而对于添加字段的操作可以支持。
而对于239635该怎么理解呢?我们来看看object_id
SQL> select object_id,object_name from dba_objects where object_id=239635;
OBJECT_ID OBJECT_NAME
---------- ------------------------------
239635 TEST_FBARCH
这个时候查看后台进程,会发现闪回归档其实还有一个后台进程fbda
SQL> !ps -ef|grep fb
oracle 26606 1 59 22:38 ? 00:07:24 ora_fbda_actvdb
oracle 26924 26849 0 22:51 pts/1 00:00:00 /bin/bash -c ps -ef|grep fb
oracle 26926 26924 0 22:51 pts/1 00:00:00 grep fb