Oracle Study学习之--Flashback Archive
CREATE FLASHBACK ARCHIVE
Purpose
Use the CREATE FLASHBACK ARCHIVE statement tocreate a flashback data archive, which provides the ability to automaticallytrack and archive transactional data changes to specified database objects. Aflashback data archive consists of multiple tablespaces and stores historicdata from all transactions against tracked tables.
Flashback dataarchives retain historical data for the time duration specified using the RETENTION parameter.Historical data can be queried using the Flashback Query AS OF clause.Archived historic data that has aged beyond the specified retention period isautomatically purged.
Flashback dataarchives retain historical data across data definition language (DDL) changesto tables enabled for flashback data archive. Flashback data archives supportsa lot of common DDL statements, including some DDL statements that alter tabledefinitions or incur data movement. DDL statements that are not supportedresult in error ORA-55610.
Syntax
create_flashback_archive::=
一、 建立flashbackarchive
1、建立flashback专用表空间
14:33:13 SYS@ orcl >create tablespaceflash_tbs
14:33:26 2 datafile'/u01/app/oracle/oradata/orcl/flash_tbs01.dbf' size 100m;
Tablespace created.
Elapsed: 00:00:22.03
2、建立flashback archive
14:36:16 SYS@ orcl >create flashbackarchive farch1
14:36:54 2 tablespace flash_tbs
14:36:58 3 quota 20m
14:37:01 4 retention 1 month;
Flashback archive created.
3、修改flashback archive属性
14:37:09 SYS@ orcl >alter flashbackarchive farch1 set default;
Flashback archive altered.
Elapsed: 00:00:00.15
4、查看flashback archive属性
14:40:13 SYS@ orcl >colFLASHBACK_ARCHIVE_NAME for a20
14:40:25 SYS@ orcl >select FLASHBACK_ARCHIVE_NAME,RETENTION_IN_DAYS ,STATUS fromdba_flashback_archive;
FLASHBACK_ARCHIVE_NA RETENTION_IN_DAYSSTATUS
-------------------- ------------------------
FARCH1 30 DEFAULT
Elapsed: 00:00:00.01
14:41:54 SYS@ orcl >col QUOTA_IN_MB fora10
14:42:02 SYS@ orcl >select * from dba_flashback_archive_ts;
FLASHBACK_ARCHIVE_NA FLASHBACK_ARCHIVE# TABLESPACE_NAME QUOTA_IN_M
-------------------- ------------------------------------------------ ----------
FARCH1 1FLASH_TBS 20
5、添加tablespace到flashback archive
14:42:03 SYS@ orcl >create tablespaceflash_tbs2
14:42:36 2 datafile'/u01/app/oracle/oradata/orcl/flash_tbs2a.dbf' size 100m;
Tablespace created.
14:43:51 SYS@ orcl >alter flashbackarchive farch1 add tablespace flash_tbs2;
Flashback archive altered.
Elapsed: 00:00:00.22
14:44:05 SYS@ orcl >select * fromdba_flashback_archive_ts;
FLASHBACK_ARCHIVE_NA FLASHBACK_ARCHIVE#TABLESPACE_NAME QUOTA_IN_M
-------------------- ------------------------------------------------ ----------
FARCH1 1 FLASH_TBS 20
FARCH1 1 FLASH_TBS2
Elapsed: 00:00:00.00
二、在表上启用flashbackarchive
1、授予权限
15:00:11 SYS@ orcl >select * fromsystem_privilege_map where NAME like '%FLASHBACK%';
PRIVILEGE NAME PROPERTY
-------------------------------------------------- ----------
-243 FLASHBACK ANY TABLE 0
-350 FLASHBACK ARCHIVE ADMINISTER 0
Elapsed: 00:00:00.03
15:00:38 SYS@ orcl >grant flashbackarchive on farch1 to scott;
Grant succeeded.
15:04:50 SCOTT@ orcl >alter table emp2flashback archive;
Table altered.
15:11:13 SCOTT@ orcl >select * from tab;
TNAME TABTYPE CLUSTERID
------------------------------ -----------------
BONUS TABLE
DEPT TABLE
DEPT1 TABLE
EMP TABLE
EMP1 TABLE
EMP2 TABLE
EMP3 TABLE
SALGRADE TABLE
SYS_FBA_DDL_COLMAP_75889 TABLE
SYS_FBA_HIST_75889 TABLE
SYS_FBA_TCRV_75889 TABLE
三、 flashback archive 应用
1) 访问历史数据
15:09:01SCOTT@ orcl >set autotrace on
15:09:08SCOTT@ orcl >r
1* select * from emp2 as of timestampto_timestamp('2015-05-11 15:05:04','yyyy-mm-dd hh24:mi:ss')
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
-------------------- --------- ---------- ------------ ---------- ---------- ----------
7566 JONES MANAGER 7839 02-APR-81 2975 20
7900 JAMES CLERK 7698 03-DEC-81 950 30
7698 BLAKE MANAGER 7839 01-MAY-81 2850 30
7499 ALLEN SALESMAN 7698 20-FEB-81 1600 300 30
7839 KING PRESIDENT 17-NOV-81 5000 10
7844 TURNER SALESMAN 7698 08-SEP-81 1500 0 30
7902 FORD ANALYST 7566 03-DEC-81 3000 20
7654 MARTIN SALESMAN 7698 28-SEP-81 1250 1400 30
7788 SCOTT ANALYST 7566 19-APR-87 3000 20
7782 CLARK MANAGER 7839 09-JUN-81 2450 10
7521 WARD SALESMAN 7698 22-FEB-81 1250 500 30
7934 MILLER CLERK 7782 23-JAN-82 1300 10
7369 SMITH CLERK 7902 17-DEC-80 800 20
7876 ADAMS CLERK 7788 23-MAY-87 1100 20
14 rowsselected.
Elapsed:00:00:00.03
ExecutionPlan
----------------------------------------------------------
Plan hashvalue: 3389285906
----------------------------------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | Pstart| Pstop |
----------------------------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 17 | 1479 | 11 (10)| 00:00:01 | | |
| 1 | VIEW | | 17 | 1479 | 11 (10)| 00:00:01 | | |
| 2 | UNION-ALL | | | | | | | |
|* 3 | FILTER | | | | | | | |
| 4 | PARTITION RANGE SINGLE| | 1 | 113 | 2 (0)| 00:00:01 | KEY | 1 |
|* 5 | TABLE ACCESS FULL |SYS_FBA_HIST_75889 | 1 | 113 | 2 (0)| 00:00:01 | KEY | 1 |
|* 6 | FILTER | | | | | | | |
|* 7 | HASH JOIN OUTER | | 16 | 34032 | 9 (12)| 00:00:01 | | |
|* 8 | TABLE ACCESS FULL | EMP2 | 16 | 1584 | 5 (0)| 00:00:01 | | |
|* 9 | TABLE ACCESS FULL |SYS_FBA_TCRV_75889 | 4 | 8112 | 3 (0)| 00:00:01 | | |
----------------------------------------------------------------------------------------------------------------
PredicateInformation (identified by operation id):
---------------------------------------------------
3 -filter("TIMESTAMP_TO_SCN"(TIMESTAMP' 2015-05-1115:05:04.000000000')<10456170)
5 - filter("ENDSCN"<=10456170AND "ENDSCN">"TIMESTAMP_TO_SCN"(TIMESTAMP' 2015-05-11
15:05:04.000000000') AND("STARTSCN" IS NULL OR "STARTSCN"<="TIMESTAMP_TO_SCN"(TIMESTAMP'2015-05-11
15:05:04.000000000')))
6 -filter("STARTSCN"<="TIMESTAMP_TO_SCN"(TIMESTAMP'2015-05-11 15:05:04.000000000') OR "STARTSCN"
IS NULL)
7 -access("T".ROWID=CHARTOROWID("RID"(+)))
8 -filter("T"."VERSIONS_STARTSCN" IS NULL)
9 - filter(("ENDSCN"(+) IS NULL OR"ENDSCN"(+)>10456170) AND ("STARTSCN"(+) IS NULL OR
"STARTSCN"(+)<10456170))
Note
-----
- dynamic sampling used for this statement(level=2)
Statistics
----------------------------------------------------------
78 recursive calls
0 db block gets
111 consistent gets
0 physical reads
0 redo size
1421 bytes sent via SQL*Net to client
415 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
3 sorts (memory)
0 sorts (disk)
14 rows processed
15:09:11 SCOTT@ orcl >
2) 生成统计报表
15:12:07SCOTT@ orcl >select * from emp2
15:14:53 2 versions
15:14:57 3 between timestamp
15:15:16 4 to_timestamp('2015-05-11 15:05:04','yyyy-mm-dd hh24:mi:ss')
15:15:29 5 andmaxvalue
15:15:34 6 where ename='SCOTT';
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
-------------------- --------- ---------- ------------ ---------- ---------- ----------
7788 SCOTT ANALYST 7566 19-APR-87 3000 20
Elapsed:00:00:00.01
15:15:45 SCOTT@ orcl >
3) 信息生命周期管理
15:15:45SCOTT@ orcl >select count(*) from emp2;
COUNT(*)
----------
18
Elapsed:00:00:00.00
15:17:22SCOTT@ orcl >insert into emp2 select * from emp2;
18 rowscreated.
Elapsed:00:00:00.00
15:17:31SCOTT@ orcl >commit;
Commit complete.
Elapsed:00:00:00.09
15:17:33SCOTT@ orcl >select count(*) from emp2;
COUNT(*)
----------
36
Elapsed:00:00:00.00
15:17:37SCOTT@ orcl >select * from emp2
15:18:00 2 versions
15:18:06 3 between timestamp
15:18:13 4 to_timestamp('2015-05-11 15:05:04','yyyy-mm-dd hh24:mi:ss')
15:18:30 5 and
15:18:32 6 to_timestamp('2015-05-11 15:17:33','yyyy-mm-dd hh24:mi:ss')
15:19:06 7 where empno=7788;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
-------------------- --------- ---------- ------------ ---------- ---------- ----------
7788 SCOTT ANALYST 7566 19-APR-87 3000 20
Elapsed:00:00:00.00
15:19:13SCOTT@ orcl >select * from emp2 where empno=7788;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
-------------------- --------- ---------- ------------ ---------- ---------- ----------
7788 SCOTT ANALYST 7566 19-APR-87 3000 20
7788 SCOTT ANALYST 7566 19-APR-87 3000 20
Elapsed:00:00:00.00
15:19:25SCOTT@ orcl >select * from emp2
15:19:42 2 versions
15:19:45 3 between timestamp
15:19:48 4 to_timestamp('2015-05-0915:05:04','yyyy-mm-dd hh24:mi:ss')
15:19:59 5 and
15:20:02 6 to_timestamp('2015-05-11 15:17:33','yyyy-mm-dd hh24:mi:ss')
15:20:06 7 where empno=7788;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
-------------------- --------- ---------- ------------ ---------- ---------- ----------
7788 SCOTT ANALYST 7566 19-APR-87 3000 20
Elapsed:00:00:00.02
15:20:09SCOTT@ orcl >select * from emp2
15:20:27 2 versions
15:20:30 3 between timestamp
15:20:37 4 to_timestamp('2015-05-09 15:05:04','yyyy-mm-dd hh24:mi:ss')
15:20:41 5 and
15:20:44 6 to_timestamp('2015-05-11 15:20:00','yyyy-mm-dd hh24:mi:ss')
15:21:01 7 where empno=7788;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
-------------------- --------- ---------- ------------ ---------- ---------- ----------
7788 SCOTT ANALYST 7566 19-APR-87 3000 20
Elapsed:00:00:00.01
案例测试:
flashback archive:
1、建立flashback archive 专用tablespace
11:15:32 SYS@ orcl >create tablespace ftbs1
11:15:40 2 datafile '/u01/app/oracle/oradata/orcl/ftbs1.dbf' size 100m;
Tablespace created.
Elapsed: 00:00:25.14
2、建立flashback archive
11:16:17 SYS@ orcl >create flashback archive farch1
11:16:41 2 tablespace ftbs1
11:17:14 3 quota 20m
11:17:26 4 retention 7 day;
Flashback archive created.
Elapsed: 00:00:00.28
3、查询属性
11:17:49 SYS@ orcl >select FLASHBACK_ARCHIVE_NAME,RETENTION_IN_DAYS ,STATUS from dba_flashback_archive
11:18:07 2 ;
FLASHBACK_ RETENTION_IN_DAYS STATUS
---------- ----------------- -------
FARCH1 7
Elapsed: 00:00:00.01
11:18:08 SYS@ orcl >select * from dba_flashback_archive_ts;
FLASHBACK_ FLASHBACK_ARCHIVE# TABLESPACE_NAME QUOTA_IN_M
---------- ------------------ ------------------------------ ----------
FARCH1 1 FTBS1 20
Elapsed: 00:00:00.01
11:18:37 SYS@ orcl >alter flashback archive farch1 set default;
Flashback archive altered.
Elapsed: 00:00:00.19
11:18:56 SYS@ orcl >select FLASHBACK_ARCHIVE_NAME,RETENTION_IN_DAYS ,STATUS from dba_flashback_archive;
FLASHBACK_ RETENTION_IN_DAYS STATUS
---------- ----------------- -------
FARCH1 7 DEFAULT
Elapsed: 00:00:00.01
4、授权用户在table启用flashback archive
11:19:11 SYS@ orcl >grant flashback archive on farch1 to scott;
Grant succeeded.
11:20:56 SCOTT@ orcl >alter table emp2 flashback archive farch1;
Table altered.
Elapsed: 00:00:00.31
11:21:14 SCOTT@ orcl >select * from tab;
TNAME TABTYPE CLUSTERID
------------------------------ ------- ----------
BONUS TABLE
DEPT TABLE
EMP TABLE
EMP2 TABLE
SALGRADE TABLE
T1 TABLE
6 rows selected.
Elapsed: 00:00:00.01
11:21:46 SCOTT@ orcl >delete from emp2;
36 rows deleted.
Elapsed: 00:00:00.03
11:22:05 SCOTT@ orcl >commit;
Commit complete.
Elapsed: 00:00:00.19
11:22:08 SCOTT@ orcl >select * from tab;
TNAME TABTYPE CLUSTERID
------------------------------ ------- ----------
BONUS TABLE
DEPT TABLE
EMP TABLE
EMP2 TABLE
SALGRADE TABLE
T1 TABLE
6 rows selected.
Elapsed: 00:00:00.00
11:22:12 SCOTT@ orcl >select * from emp2;
no rows selected
Elapsed: 00:00:00.00
4、查询flashback archive数据
默认,Oracle 优先从undo block读取历史数据,若undo block数据不存在,然后再去访问 flashback archive。
11:24:06 SCOTT@ orcl >set autotrace on
11:24:16 SCOTT@ orcl >select * from emp2 as of timestamp to_timestamp('2015-05-12 11:21:46','yyyy-mm-dd hh24:mi:ss');
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- ---------- --------- ---------- ------------ ---------- ---------- ----------
7369 SMITH CLERK 7902 17-DEC-80 800 20
7499 ALLEN SALESMAN 7698 20-FEB-81 1600 300 30
7521 WARD SALESMAN 7698 22-FEB-81 1250 500 30
7566 JONES MANAGER 7839 02-APR-81 2975 20
7654 MARTIN SALESMAN 7698 28-SEP-81 1250 1400 30
7698 BLAKE MANAGER 7839 01-MAY-81 2850 30
7782 CLARK MANAGER 7839 09-JUN-81 2450 10
7788 SCOTT ANALYST 7566 19-APR-87 3000 20
7839 KING PRESIDENT 17-NOV-81 5000 10
7844 TURNER SALESMAN 7698 08-SEP-81 1500 0 30
7876 ADAMS CLERK 7788 23-MAY-87 1100 20
7900 JAMES CLERK 7698 03-DEC-81 950 30
7902 FORD ANALYST 7566 03-DEC-81 3000 20
7934 MILLER CLERK 7782 23-JAN-82 1300 10
7369 SMITH CLERK 7902 17-DEC-80 800 20
7499 ALLEN SALESMAN 7698 20-FEB-81 1600 300 30
7521 WARD SALESMAN 7698 22-FEB-81 1250 500 30
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- ---------- --------- ---------- ------------ ---------- ---------- ----------
7566 JONES MANAGER 7839 02-APR-81 2975 20
7369 SMITH CLERK 7902 17-DEC-80 800 20
7499 ALLEN SALESMAN 7698 20-FEB-81 1600 300 30
7521 WARD SALESMAN 7698 22-FEB-81 1250 500 30
7566 JONES MANAGER 7839 02-APR-81 2975 20
7654 MARTIN SALESMAN 7698 28-SEP-81 1250 1400 30
7698 BLAKE MANAGER 7839 01-MAY-81 2850 30
7782 CLARK MANAGER 7839 09-JUN-81 2450 10
7788 SCOTT ANALYST 7566 19-APR-87 3000 20
7839 KING PRESIDENT 17-NOV-81 5000 10
7844 TURNER SALESMAN 7698 08-SEP-81 1500 0 30
7876 ADAMS CLERK 7788 23-MAY-87 1100 20
7900 JAMES CLERK 7698 03-DEC-81 950 30
7902 FORD ANALYST 7566 03-DEC-81 3000 20
7934 MILLER CLERK 7782 23-JAN-82 1300 10
7369 SMITH CLERK 7902 17-DEC-80 800 20
7499 ALLEN SALESMAN 7698 20-FEB-81 1600 300 30
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- ---------- --------- ---------- ------------ ---------- ---------- ----------
7521 WARD SALESMAN 7698 22-FEB-81 1250 500 30
7566 JONES MANAGER 7839 02-APR-81 2975 20
36 rows selected.
Elapsed: 00:00:00.01
Execution Plan
----------------------------------------------------------
Plan hash value: 2941272003
--------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
--------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 654 | 56898 | 9 (0)| 00:00:01 |
| 1 | TABLE ACCESS FULL| EMP2 | 654 | 56898 | 9 (0)| 00:00:01 |
--------------------------------------------------------------------------
Statistics
----------------------------------------------------------
4 recursive calls
0 db block gets
10 consistent gets
0 physical reads
0 redo size
2655 bytes sent via SQL*Net to client
437 bytes received via SQL*Net from client
4 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
36 rows processed
从以上sql可以看到,数据是从undo data读出
11:25:16 SCOTT@ orcl >set autotrace off
11:25:23 SCOTT@ orcl >select * from tab;
TNAME TABTYPE CLUSTERID
------------------------------ ------- ----------
BONUS TABLE
DEPT TABLE
EMP TABLE
EMP2 TABLE
SALGRADE TABLE
SYS_FBA_DDL_COLMAP_75889 TABLE
SYS_FBA_HIST_75889 TABLE
SYS_FBA_TCRV_75889 TABLE
T1 TABLE
9 rows selected.
Elapsed: 00:00:00.01
6、建立新的undo tablespace,然后切换
11:19:42 SYS@ orcl >create undo tablespace undotbs1
11:25:57 2 datafile '/u01/app/oracle/oradata/orcl/undotbs1.dbf' size 100m;
Tablespace created.
Elapsed: 00:00:23.73
11:26:41 SYS@ orcl >show parameter undo
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
undo_management string AUTO
undo_retention integer 3600
undo_tablespace string UNDOTBS2
11:26:45 SYS@ orcl >alter system set undo_tablespace=undotbs1;
System altered.
Elapsed: 00:00:00.27
重新启动数据库:
11:27:20 SYS@ orcl >startup force;
ORACLE instance started.
Total System Global Area 205049856 bytes
Fixed Size 1335500 bytes
Variable Size 113250100 bytes
Database Buffers 88080384 bytes
Redo Buffers 2383872 bytes
Database mounted.
Database opened.
再次查询历史数据,因为切换undo tablespace,以前的undo block不能访问,所以会从flashback archive读取数据
11:27:50 @ >conn scott/tiger
Connected.
11:27:58 SCOTT@ orcl >set autotrace on
11:28:02 SCOTT@ orcl >select * from emp2 as of timestamp to_timestamp('2015-05-12 11:21:46','yyyy-mm-dd hh24:mi:ss');
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- ---------- --------- ---------- ------------ ---------- ---------- ----------
7369 SMITH CLERK 7902 17-DEC-80 800 20
7499 ALLEN SALESMAN 7698 20-FEB-81 1600 300 30
7521 WARD SALESMAN 7698 22-FEB-81 1250 500 30
7566 JONES MANAGER 7839 02-APR-81 2975 20
7654 MARTIN SALESMAN 7698 28-SEP-81 1250 1400 30
7698 BLAKE MANAGER 7839 01-MAY-81 2850 30
7782 CLARK MANAGER 7839 09-JUN-81 2450 10
7788 SCOTT ANALYST 7566 19-APR-87 3000 20
7839 KING PRESIDENT 17-NOV-81 5000 10
7844 TURNER SALESMAN 7698 08-SEP-81 1500 0 30
7876 ADAMS CLERK 7788 23-MAY-87 1100 20
7900 JAMES CLERK 7698 03-DEC-81 950 30
7902 FORD ANALYST 7566 03-DEC-81 3000 20
7934 MILLER CLERK 7782 23-JAN-82 1300 10
7369 SMITH CLERK 7902 17-DEC-80 800 20
7499 ALLEN SALESMAN 7698 20-FEB-81 1600 300 30
7521 WARD SALESMAN 7698 22-FEB-81 1250 500 30
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- ---------- --------- ---------- ------------ ---------- ---------- ----------
7566 JONES MANAGER 7839 02-APR-81 2975 20
7369 SMITH CLERK 7902 17-DEC-80 800 20
7499 ALLEN SALESMAN 7698 20-FEB-81 1600 300 30
7521 WARD SALESMAN 7698 22-FEB-81 1250 500 30
7566 JONES MANAGER 7839 02-APR-81 2975 20
7654 MARTIN SALESMAN 7698 28-SEP-81 1250 1400 30
7698 BLAKE MANAGER 7839 01-MAY-81 2850 30
7782 CLARK MANAGER 7839 09-JUN-81 2450 10
7788 SCOTT ANALYST 7566 19-APR-87 3000 20
7839 KING PRESIDENT 17-NOV-81 5000 10
7844 TURNER SALESMAN 7698 08-SEP-81 1500 0 30
7876 ADAMS CLERK 7788 23-MAY-87 1100 20
7900 JAMES CLERK 7698 03-DEC-81 950 30
7902 FORD ANALYST 7566 03-DEC-81 3000 20
7934 MILLER CLERK 7782 23-JAN-82 1300 10
7369 SMITH CLERK 7902 17-DEC-80 800 20
7499 ALLEN SALESMAN 7698 20-FEB-81 1600 300 30
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- ---------- --------- ---------- ------------ ---------- ---------- ----------
7521 WARD SALESMAN 7698 22-FEB-81 1250 500 30
7566 JONES MANAGER 7839 02-APR-81 2975 20
36 rows selected.
Elapsed: 00:00:00.13
Execution Plan
----------------------------------------------------------
Plan hash value: 3389285906
----------------------------------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | Pstart| Pstop |
----------------------------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 34 | 2958 | 16 (7)| 00:00:01 | | |
| 1 | VIEW | | 34 | 2958 | 16 (7)| 00:00:01 | | |
| 2 | UNION-ALL | | | | | | | |
|* 3 | FILTER | | | | | | | |
| 4 | PARTITION RANGE SINGLE| | 1 | 113 | 3 (0)| 00:00:01 | KEY | 1 |
|* 5 | TABLE ACCESS FULL | SYS_FBA_HIST_75889 | 1 | 113 | 3 (0)| 00:00:01 | KEY | 1 |
|* 6 | FILTER | | | | | | | |
|* 7 | HASH JOIN OUTER | | 33 | 70191 | 13 (8)| 00:00:01 | | |
|* 8 | TABLE ACCESS FULL | EMP2 | 33 | 3267 | 9 (0)| 00:00:01 | | |
|* 9 | TABLE ACCESS FULL | SYS_FBA_TCRV_75889 | 36 | 73008 | 3 (0)| 00:00:01 | | |
----------------------------------------------------------------------------------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
3 - filter("TIMESTAMP_TO_SCN"(TIMESTAMP' 2015-05-12 11:21:46.000000000')<10558115)
5 - filter("ENDSCN"<=10558115 AND "ENDSCN">"TIMESTAMP_TO_SCN"(TIMESTAMP' 2015-05-12
11:21:46.000000000') AND ("STARTSCN" IS NULL OR "STARTSCN"<="TIMESTAMP_TO_SCN"(TIMESTAMP' 2015-05-12
11:21:46.000000000')))
6 - filter("STARTSCN"<="TIMESTAMP_TO_SCN"(TIMESTAMP' 2015-05-12 11:21:46.000000000') OR "STARTSCN"
IS NULL)
7 - access("T".ROWID=CHARTOROWID("RID"(+)))
8 - filter("T"."VERSIONS_STARTSCN" IS NULL)
9 - filter(("ENDSCN"(+) IS NULL OR "ENDSCN"(+)>10558115) AND ("STARTSCN"(+) IS NULL OR
"STARTSCN"(+)<10558115))
Note
-----
- dynamic sampling used for this statement (level=2)
Statistics
----------------------------------------------------------
3280 recursive calls
0 db block gets
852 consistent gets
202 physical reads
412 redo size
2489 bytes sent via SQL*Net to client
437 bytes received via SQL*Net from client
4 SQL*Net roundtrips to/from client
57 sorts (memory)
0 sorts (disk)
36 rows processed
从以上执行计划可以看出,访问的是flashback archive ,而不是undo data。
Oracle Study学习之--Flashback Archive相关推荐
- Oracle Study之案例--数据恢复神器Flashback(2)
Oracle Study之案例--数据恢复神器Flashback(2) 一.Flashback Table: 对于DML的误操作,可以通过Undo block对表进行回退(两种模式:基于时间和基于SC ...
- oracle flashback 功能,Oracle 11g 新特性 Flashback Data Archive 使用实例
Flashback Data Archive(闪回日志归档)其实理解为长时间的保存undo数据,对于某些重要的表可以自定义它的历史记录保存期限,它的的种种行为与undo表空间十分相似,使用的时候也是完 ...
- oracle flashback archive,ORACLE 11G flashback archive
ORACLE 11G flashback archive 闪回数据存档,它是由一个或多个表空间存储对指定表进行的更改,也可对数据库级别做闪回数据存档 create flashback archive的 ...
- oracle flashback与归档关系,Oracle Flashback Archive——Oracle闪回归档(下)
Flashback Archive是Oracle 11g推出的具有针对性和强制性的数据透明归档技术.本篇我们集中介绍与该特性相关的权限和DDL操作问题. 9.Flashback Archive相关权限 ...
- oracle flashback archive,ORACLE Flashback Data Archive
Flashback Data Archive 11g的新功能,有如下特性. 1.在有效期内保存事务改变的信息. 2.FDA包含一个或多个表空间,可以创建多个FDA,以sysdba登陆时,可以指定默认的 ...
- oracle flashback与归档关系,Oracle闪回归档(下) —— Oracle Flashback Archive
另一个与flashback archive相关的系统权限是flashback archive administrator,拥有这个权限的用户可以执行下列操作类型: -Create flashback ...
- adg oracle,【学习笔记】Oracle ADG搭建与配置 windows平台11G ADG搭建与测试
[学习笔记]Oracle ADG搭建与配置 windows平台11G ADG搭建与测试 时间:2016-10-26 20:09 来源:Oracle研究中心 作者:HTZ 点击: 次 天萃荷 ...
- Oracle Study案例之--基于表空间的时间点恢复(TSPITR)
Oracle Study案例之--基于表空间的时间点恢复(TSPITR) TSPITR(表空间时间点恢复)用于将一个或多个表空间恢复到过去某个时间点的状态,而其他表空间仍然保持现有状态. TSPIT ...
- Oracle Study之--Oracle 11gR2通过RMAN克隆数据库
Oracle Study之--Oracle 11gR2通过RMAN克隆数据库 Purpose of Database Duplication A duplicate database is usefu ...
最新文章
- 在Mac上通过VMware Fushion 15.1配置静态IP虚拟机实录
- php贝叶斯,php – 将单个概率与朴素贝叶斯垃圾邮件过滤相结合
- Git之pull后回退版本
- 中国移动集中化BI探索:数据仓库与Hadoop混搭
- 【HDU - 1251 】统计难题(字典树,求拥有公共前缀的字符串数量)
- STL学习系列一:STL(标准模板库)理论基础
- C++学习心得总结【20181128】
- IOS数组按中文关键字以字母序排序
- Nodejs 国内镜像源加速下载
- 软件工程总结笔记——软件详细设计(五)
- Java实例化对象的几种方式
- 六类网线钳能压五类水晶头吗_多功能网线钳的使用方法?“普通网线钳”能压“七类水晶头”吗?...
- 记一次3dmax操作入门(二)模型导入,选择和显示
- iOS-设置导航栏颜色(iOS8+)
- 2dlda人脸识别 matlab,利用2DPCA和2DLDA在ORL人脸数据库上做的人脸识别实验
- C语言中的引用,以及传递引用,数组传递
- 未来计算机的畅享300,新学期畅享作文300字(通用5篇)
- 《土地公婆》钟久夫邓天晴演绎梁祝爱情
- 纯HTML+CSS实现动画
- Windows下的很多程序都有十分漂亮的菜单
热门文章
- Python贪心算法解决收银员找零问题
- 浮点数如何在计算机中表示
- 2021趋势研判:保险柜(箱)行业市场规模与现状
- 世界杯——手动为梅西标名
- position fixed 在ios上滚动不固定问题
- linux桌面发展方向,不知道就OUT了!Linux桌面领域7大趋势
- python好用的库存尾货女装_服装库存尾货生意怎么做?
- 区块链 fabric 1.4.4 搭建,Mysql 安装,区块链项目设计介绍
- “钢铁侠”马斯克自述创业史:Space X存活几率只有10%
- MERCURY 54M MW54U/150M MW150U USB网卡驱动 Linux 驱动