欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Oracle flashbackup基础知识

程序员文章站 2022-06-15 13:09:58
...

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;

Oracle flashbackup基础知识

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

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