闪回查询与闪回表(Flashback Query、Flashback Table)
来源:互联网 发布:江南大学软件下载 编辑:程序博客网 时间:2024/06/05 16:23
Flashback Query闪回查询
flashback query是基于undo表空间的闪回,与之相关的参数如下:
SQL> show parameter undo
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
undo_management string AUTO
undo_retention integer 900
undo_tablespace string UNDOTBS1
undo_management:undo管理方式分自动auto和手动manul两种,默认为auto。
undo_retention:此参数表示,如果undo表空间中的空间充足,那么undo数据至少为保留900秒;
undo_tablespace:指定undo表空间
注意:如果undo表空间为auto管理方式,那么当undo表空间中的空间不足的时候,还是会覆盖保留区内的undo数据,也就说这种情况下
不能保证undo数据保留900秒,900秒内不一定能恢复dml操作。特殊情况下可以用下面命令长期保留undo数据,但为影响undo空间和dml操作
SQL>alter tablespace undotbs1 retention guarantee;
示例说明:
将test01表在1分钟内删除的数据插入test01_delete表中或创建表test01_delete
SQL> insert into test01_delete select * from test01 as of timestamp systimestamp - interval '1' minute
where id not in(select id from test01);
SQL>create table test01_delete as select * from test01 as of timestamp systimestamp - interval '1' minute
where id not in(select id from test01);
--也可以基于scn闪回
Flashback Table闪回表的使用
Flashback Table和Flashback Query一样是基于undo的闪回。 闪回表时用户必须拥有flashback table权限和表row movement功能;
示例:
[oracle@b1 ~]$ export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"
SQL> select to_date(sysdate,'YYYY-MM-DD HH24:MI:SS') sys_date from dual; --查看时间戳
SYS_DATE
-------------------
2013-10-06 18:11:39
SQL> select dbms_flashback.get_system_change_number from dual; --查看scn
GET_SYSTEM_CHANGE_NUMBER
------------------------
1054345
SQL> grant flashback any table to scott; --赋予scott flashback table权限
Grant succeeded.
SQL> conn scott/xyc
Connected.
SQL> select * from xyc_t1;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- -------------------- ------------------ ---------- ------------------- ---------- ---------- ----------
7698 BLAKE MANAGER 7839 1981-05-01 00:00:00 2850 30
7902 FORD ANALYST 7566 1981-12-03 00:00:00 8888 20
SQL> delete from xyc_t1;
2 rows deleted.
SQL> commit;
Commit complete.
SQL> flashback table xyc_t1 to scn '1054345';
flashback table xyc_t1 to scn '1054345'
*
ERROR at line 1:
ORA-08189: cannot flashback the table because row movement is not enabled --必须开启行移动功能
SQL> alter table xyc_t1 enable row movement; --开启行移动功能
Table altered.
SQL> flashback table xyc_t1 to scn '1054345'; --基于scn闪回表
Flashback complete.
SQL> select * from xyc_t1;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- -------------------- ------------------ ---------- ------------------- ---------- ---------- ----------
7698 BLAKE MANAGER 7839 1981-05-01 00:00:00 2850 30
7902 FORD ANALYST 7566 1981-12-03 00:00:00 8888 20
SQL> flashback table xyc_t1 to timestamp to_timestamp('2013-10-06 18:10:51','YYYY-MM-DD HH24:MI:SS'); --基于时间戳闪回表
Flashback complete.
SQL> select * from xyc_t1;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- -------------------- ------------------ ---------- ------------------- ---------- ---------- ----------
7698 BLAKE MANAGER 7839 1981-05-01 00:00:00 2850 30
7902 FORD ANALYST 7566 1981-12-03 00:00:00 8888 20
SQL>
- 闪回查询与闪回表(Flashback Query、Flashback Table)
- Flashback Query闪回查询
- flashback query闪回查询
- 闪回查询flashback query
- 闪回版本查询与闪回事务查询(Flashback Version Query、Flashback Transaction Query)
- Oracle 闪回特性(Flashback Query、Flashback Table)
- Oracle 闪回特性(Flashback Query、Flashback Table)
- Oracle 闪回特性(Flashback Query、Flashback Table)
- Oracle 闪回特性(Flashback Query、Flashback Table)
- Oracle 闪回特性(Flashback Query、Flashback Table)
- Flashback Query Flashback Version Query Flashback Table Flashback Transaction
- Oracle Flashback Query 闪回查询
- oracle flashback query(闪回查询)
- flashback query、flashback drop、flashback table用法总结
- flashback query、flashback drop、flashback table用法总结
- flashback六大技术之flashback transaction query 和flashback table
- flashback query、flashback drop、flashback table用法总结
- Oracle 9i闪回查询(Flashback Query)
- Windows、Ubuntu双系统重装windows系统后grub引导的修复及默认启动项的修改
- 右键-打开方式-选择程序-无法添加
- 实现一个简单的计算器
- 概率dp-九度-1546-迷宫问题
- 【Python】Python中如何实现for循环step=2,step=-2
- 闪回查询与闪回表(Flashback Query、Flashback Table)
- jsp的url去掉.jsp的后缀——urlrewrite的使用
- linux命令详解--tcpdump
- GUI
- Paxos算法
- 旧工程适配iOS6和iPhone5续之第三方静态库
- python network programming tutorial
- 使用eclipse编译生成hadoop eclipse开发插件
- hdu 4686 Arc of Dream 矩阵快速幂