ITPub博客

首页 > 数据库 > Oracle > flashback使用(4)

flashback使用(4)

原创 Oracle 作者:tolilong 时间:2012-06-15 13:45:28 0 删除 编辑

tl: 16 fb: --H-FL-- lb: 0x2 cc: 2


dscn 0x0000.00af2558


col 0: [ 2] c1 04


col 1: [ 3] 78 78 78


end_of_block_dump


End dump data blocks tsn: 4 file#: 4 minblk 9831 maxblk 9831



Flashback version query不会跨越DDL操作


SQL> select versions_startscn,versions_starttime,versions_endscn,versions_endtime,versions_xid,versions_operation,id,name from t4 versions between scn minvalue and maxvalue where xxx=xxx;


select versions_startscn,versions_starttime,versions_endscn,versions_endtime,versions_xid,versions_operation,id,name from t4 versions between timestamp to_timestamp('2012/06/10 16:00:00','yyyy/mm/dd hh24:mi:ss') and to_timestamp('2012/06/10 18:00:00','yyyy/mm/dd hh24:mi:ss')




(c).flashbackup transaction query


select * from flashback_transaction_query where xid in(select versions_xid from


t5 versions between scn minvalue and maxvalue);



(d).flashback table


Flashback table table_name to scn[to timestamp],如果想对表进行flashback,


必须允许表的row movement /* Style Definitions */ table.MsoNormalTable {mso-style-name:表格內文; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;} (有可能rowid发生了变化)


SQL> set time on


19:55:15 SQL> create table t1 (id number,name varchar2(10));


Table created.


19:55:30 SQL> select dbms_flashback.get_system_change_number from dual;


GET_SYSTEM_CHANGE_NUMBER


------------------------


11586851


19:55:48 SQL> insert into t1 values(1,'a');


1 row created.


19:55:56 SQL> insert into t1 values(2,'b');


1 row created.


19:56:00 SQL> insert into t1 values(3,'c');


1 row created.


19:56:03 SQL> commit;


Commit complete.


19:56:11 SQL> select dbms_flashback.get_system_change_number from dual;


GET_SYSTEM_CHANGE_NUMBER

------------------------

11586863


19:56:14 SQL> insert into t1 values(4,'d');


1 row created.


19:56:33 SQL> insert into t1 values(5,'e');


1 row created.


19:56:36 SQL> commit;


Commit complete.


19:56:39 SQL> select dbms_flashback.get_system_change_number from dual;


GET_SYSTEM_CHANGE_NUMBER

------------------------

11586873


19:56:42 SQL> insert into t1 values(6,'f');


1 row created.


19:56:55 SQL> insert into t1 values(7,'g');


1 row created.


19:56:59 SQL> commit;


Commit complete.


19:57:02 SQL> select dbms_flashback.get_system_change_number from dual;


GET_SYSTEM_CHANGE_NUMBER

------------------------

11586887



19:59:34 SQL> alter table t1 enable row movement;


Table altered.


19:59:48 SQL> flashback table t1 to scn 11586873


19:59:51 2 ;


Flashback complete.


19:59:53 SQL> select * from t1;


ID NAME


---------- ----------


1 a


2 b


3 c


4 d


5 e


20:01:37 SQL> flashback table t1 to timestamp to_timestamp('2012/06/11 19:56:39','yyyy/mm/dd hh24:mi:ss');


Flashback complete.


20:01:59 SQL> select * from t1;


ID NAME


---------- ----------


1 a


2 b


3 c


4 d


5 e



Flashback log


Tablespace bin


Undo


目的


Flashback database


ü




回滚数据库


Flashback drop



ü



恢复用户误删除的表


Flashback version query




ü


恢复用户误操作的数据


Flashback transaction query




ü


同上


Flashback table




ü


同上,但是是在表级别


[@more@]


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/24237320/viewspace-1058538/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: flashback使用(3)
下一篇: scn timestamp
请登录后发表评论 登录
全部评论

注册时间:2010-07-13

  • 博文量
    406
  • 访问量
    1208664