Oracle flashbackup基础知识

Oracle flashbackup基础知识,show parameter db_recovery;查看oracle闪回恢复目标和恢复区大小,修改oracle支持闪回恢复的时长,停

Oracle flashbackup基础知识

[日期:2012-07-12] 来源:Linux社区 作者:Linux [字体:]

(1)show parameter db_recovery;查看Oracle闪回恢复目标和恢复区大小
SQL> show parameter db_recovery;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest string /u01/flash_recovery_area
db_recovery_file_dest_size big integer 2G

(2)show parameter db_flash;查看oracle支持的闪回恢复时长(默认为分钟)
SQL> show parameter db_flash
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_flashback_retention_target integer 1440

(3)修改oracle支持闪回恢复的时长
SQL> alter system set db_flashback_retention_target=1800 scope=both;
System altered

(4)启用flashback功能
SQL> startup mount
SQL> alter database flashback on;
Database altered.

(5)停止flashback功能
SQL> startup mount
SQL> alter database flashback off;
Database altered.

(6)所有有恢复相关的文件都可以放在闪回区
SQL> select file_type from v$flash_recovery_area_usage;
FILE_TYPE
------------
CONTROLFILE
ONLINELOG
ARCHIVELOG
BACKUPPIECE
IMAGECOPY
FLASHBACKLOG
6 rows selected.

(7)恢复数据表实例一则
SQL> delete from t1;
63 rows deleted.
获取当前的SCN:
SQL> select dbms_flashback.get_system_change_number from dual;
GET_SYSTEM_CHANGE_NUMBER
------------------------
473229
select count(*) from t1 as of scn 473221;(通过不断尝试丢失数据的scn号,最后发现是在473221这个scn号中丢失的)
insert into t1 select * from t1 as of scn 473221;

(8)查看已经使用的flash空间
SQL> select sum(percent_space_used)*3/100 from v$flash_recovery_area_usage;
SUM(PERCENT_SPACE_USED)*3/100
-----------------------------
.0114

(9)显示回收站中被drop的表(recyclebin相当于windows中的回收站)。
show parameter recyclebin;

如果想不在回收站中留下被删除的表,则直接执行如下语句即可。

drop table emp3 purge;

linux

  • 0
  • Oracle中用游标更新字段值的面试题

    ORA-00600: 内部错误代码,,参数: [6122]