【備份恢復】閃回技術之閃回版本查詢
閃回版本查詢
語法:
select column_name[,column_name,...]
from table_name
versions between[SCN|TIMESTAMP] [expr|MINVALUE] and[epxr|MAXVALUE];
1) 查詢 scott使用者 emp表欄位 empno 為 7369 對應的sal 值為 800
SYS@ORA11GR2>conn scott/tiger
Connected.
SCOTT@ORA11GR2>
SCOTT@ORA11GR2>select ename,job,sal from emp where empno=7369;
ENAME JOB SAL
---------- --------- ----------
SMITH CLERK 800
2) 對 sal 欄位進行更新,更新三次,每次增加 200
--第一次:
SCOTT@ORA11GR2>update emp set sal=sal+200 where empno=7369;
1 row updated.
SCOTT@ORA11GR2>commit;
Commit complete.
--第二次:
SCOTT@ORA11GR2>update emp set sal=sal+200 where empno=7369;
1 row updated.
SCOTT@ORA11GR2>commit;
Commit complete.
--第三次:
SCOTT@ORA11GR2>update emp set sal=sal+200 where empno=7369;
1 row updated.
SCOTT@ORA11GR2>commit;
Commit complete.
3) 查詢更新三次後的值
SCOTT@ORA11GR2>select ename,job,sal from emp where empno=7369;
ENAME JOB SAL
---------- --------- ----------
SMITH CLERK 1400
4) 閃回版本查詢,我們可以清晰的看到更新的每個版本:
SCOTT@ORA11GR2>select to_char(versions_starttime,'yyyy-mm-dd hh24:mi:ss') as starttime,versions_xid,ename,job,sal from emp versions between timestamp sysdate-10/1440 and sysdate where empno=7369;
STARTTIME VERSIONS_XID ENAME JOB SAL
------------------- ---------------- ---------- --------- ----------
2016-09-29 19:25:14 11000300E1000000 SMITH CLERK 1400
2016-09-29 19:25:00 0C002000DC000000 SMITH CLERK 1200
2016-09-29 19:24:35 14000400E1000000 SMITH CLERK 1000
SMITH CLERK 800
5) 附:涉及到的偽列
偽列 |
含義 |
VERSIONS_STARTSCN |
該記錄操作時的 scn 或時間,如果為空,表示該行記錄是在查詢範圍外創建的。 |
VERSIONS_ENDSCN |
該記錄失效時的 scn 或時間,如果為空,說明記錄當前時間在當前表記憶體在,或者已經被刪除了,可以配合著 VERSIONS_OPERATION 列來看,如果 VERSIONS_OPERATION 列值為 D,說明該列已被刪除,如果該列為空,則說明記錄在這段時間無操作。 |
VERSIONS_OPERATION |
對該行執行的操作: I 表示 insert, D 表示 delete, U 表示 update。 |
VERSIONS_XID |
該操作的事務 ID |
6) 閃回版本注意事項
ü VERSIONS 子句不能用於:
- 外部表
- 臨時表
- 固定表
- 檢視
ü VERSIONS 不能跨 DDL 命令。
ü 段收縮操作被過濾掉。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31397003/viewspace-2126601/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle 11G 閃回技術 閃回版本查詢和閃回事務查詢Oracle
- DM7閃回與閃回查詢
- Oracle 11G 閃回技術 使用Oracle閃回事務查詢Oracle
- MySQL閃回技術之binlog2sql恢復binlog中的SQLMySql
- DM8 閃回查詢
- Oracle閃回技術 為Oracle閃回配置資料庫Oracle資料庫
- Orcale利用閃回功能恢復資料
- Oracle閃回技術--Flashback Version QueryOracle
- 【DB寶43】MySQL誤操作閃回恢復利器之my2sqlMySql
- Oracle閃回功能恢復偶然丟失的資料(轉)Oracle
- 2.6.3 指定閃回區
- Oracle閃回技術 概覽 應用程式開發功能Oracle
- RAC備份恢復之Voting備份與恢復
- flashback query閃回資料
- Oracle資料庫閃回Oracle資料庫
- Oracle drop分割槽表單個分割槽無法透過閃回恢復Oracle
- MySQL工具之binlog2sql閃回操作MySql
- 資料庫備份與恢復技術資料庫
- mysql閃回工具binlog2sqlMySql
- Oracle 閃回資料庫測試Oracle資料庫
- my2sql資料閃回SQL
- 【PDB】pdb閃回,Oracle還原點Oracle
- 【趙強老師】MySQL的閃回MySql
- 詳解oracle資料庫閃回Oracle資料庫
- 騰訊基於全時態資料庫技術的資料閃回資料庫
- [重慶思莊每日技術分享]-閃回表時報錯ORA-38305
- Oracle 備份恢復之 FlashbackOracle
- Oracle 19C Data Guard基礎運維-07 failover後閃回恢復dg架構Oracle運維AI架構
- Flashback Drop閃回刪除功能實踐
- dg_閃回資料庫實驗資料庫
- 工具分享丨資料閃回工具MyFlash
- [20180423]表空間閃回與snapshot standby
- 【RECO_ORACLE】Oracle閃回PDB的方法Oracle
- 【Flashback】Flashback Drop閃回刪除功能實驗
- Oracle資料庫閃回區空間不足Oracle資料庫
- Oracle回收站表閃回機制研究Oracle
- 閃迪隨身碟資料恢復資料恢復
- 備份與恢復:polardb資料庫備份與恢復資料庫
- MySQL備份與恢復——基於Xtrabackup物理備份恢復MySql