当前位置:  数据库>oracle

Oracle 11g 回收站(recyclebin)的使用

    来源: 互联网  发布时间:2017-04-11

    本文导语: Flashback是以undo segment中的内容为基础的,因此受限于undo_retenton参数,要使用flashback的特征,必须启动自动撤销表空间。 在Oracle11g中,出现了一个新的特征,oracle flashback data archive(FDA),通过将变化的数据另外存储到创建的一个闪...

Flashback是以undo segment中的内容为基础的,因此受限于undo_retenton参数,要使用flashback的特征,必须启动自动撤销表空间。

在Oracle11g中,出现了一个新的特征,oracle flashback data archive(FDA),通过将变化的数据另外存储到创建的一个闪回归档去(flashback archive),以和undo区别开,这样可以单独设置存储策略,使其可以山回到指定时间之前的旧数据而不影响undo策略。  在Oracle 11g中,recyclebin参数发生了微小的变化.

This supported parameter was introduced in Oracle 10.2.0

Version

Parameter Name

Data Type

Session Modifiable

System Modifiable

10.2.0

recyclebin

String

TRUE

IMMEDIATE

11.1.0

recyclebin

String

TRUE

DEFERRED

从文档上我们可以看到这个变化说明,到了11g中,这个参数在session依然可以立即修改并影响当前的session,但如果是在系统一级修改的话,那么就要加deferred参数,对当前已经连接的sesion没有影响,但新连接的session将受到影响

              Flashback不支持sys用户,system表空间下面的对象,也不能从回收站里拿到。故使用sys或是system用户登录时,show recyclebin为空。

启动闪回数据库的步骤:

1,  开启归档模式:alter database archivelog;

2,  配置闪回区:alter system set db_recovery_file_dest=’/../’

3,  配置闪回保留时间,默认是1440minutes:alter system set db_flashback_retention_target=’2880’;

4,  启动闪回数据库:shutdown immediate;startup mount

Alter database flashback on/off;

5,  执行闪回操作:shutdown immediate;startup mount;

Flashback database to timestamp to_date(‘2001-02-03’,’yyyy-mm-dd hh24:mi:ss’);

或是:flashback database to scn 2323534;

Alter database open ready only;检查闪回时刻是否是所需的数据,如果不是,可以继续修改。

检查完毕之后:shutdown immediate;startup mount; alter database open resetlogs;resetlogs是将control file中的scn#与数据文件中的scn#同步,消除时间间隔。

V$flashback_database_log视图,可以查看闪回日志所占的空间,最早能闪回到的scn,最早能闪回到的时间点

7,查看回收站:show recyclebin; 或是select * from sys.recyclebin$查       所有的回收站。

8,恢复被删除的表:flashback table t_name to before drop;如果闪回

       的表名与当前的表名相同,需要重命名才可以闪回

                     Flashback table t_name to before drop rename to t_new;

9,闪回指定的表

       查看表结构:desc “BIN$qrjyuHuVotHgQAB/AQAQ3w==$0”;

       查看表的记录:select count(*) from “BIN$qrjyuHuVotHgQAB/AQAQ3w==$0”;

       安装表名称恢复:flashback table “BIN$qrjyuHuVotHgQAB/AQAQ3w==$0” to before drop;

       越过回收站直接删除:drop table t purge;drop user cascade; drop tablespace users including contents;

       清空回收站:purge index idx_1; purge user_recyclebin; purge dba_recyclebin;

                     当设置db_recovery_file_dest为空的时候,也可以取消闪回区,如果已经启用flashback database;则这个方法不能取消。

                     查看当前的scn:select current_scn from v$database;

              查看哪些对象可以利用闪回恢复区来存放:   

                            SQL> select file_type from v$flash_recovery_area_usage;

 

FILE_TYPE

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

CONTROL FILE

REDO LOG

ARCHIVED LOG

BACKUP PIECE

IMAGE COPY

FLASHBACK LOG

FOREIGN ARCHIVED LOG

 

7 rows selected.

 

       查看闪回恢复区空间的使用情况:

SQL> select * from v$flash_recovery_area_usage;

 

FILE_TYPE            PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE

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

NUMBER_OF_FILES

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

CONTROL FILE                          0                         0

              0

 

REDO LOG                              0                         0

              0

 

ARCHIVED LOG                          0                         0

              0

 

 

FILE_TYPE            PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE

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

NUMBER_OF_FILES

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

BACKUP PIECE                          0                         0

              0

 

IMAGE COPY                            0                         0

              0

 

FLASHBACK LOG                         0                         0

              0

 

 

FILE_TYPE            PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE

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

NUMBER_OF_FILES

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

FOREIGN ARCHIVED LOG                  0                         0

              0

 

 

7 rows selected.

计算flash recovery area已经占用的空间:

 

SQL> select sum(percent_space_used)*3/100 from v$flash_recovery_area_usage;

 

SUM(PERCENT_SPACE_USED)*3/100

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

                            0

如果flash recovery area空间不足导致db不能打开或是hang住的处理方法

       Alter system set db_recovery_file_dest_size=3G scope=spfiel;


    
 
 

您可能感兴趣的文章:

  • ORACLE 回收站当前状态查询整理
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 回收Oracle的监听器日志文件
  • Oracle回滚段空间回收步骤
  • Oracle 12c发布简单介绍及官方下载地址
  • 在linux下安装oracle,如何设置让oracle自动启动!也就是让oracle那个服务自动启动,不是手动的
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • Oracle 数据库开发工具 Oracle SQL Developer
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • Oracle EBS R12 支持 Oracle Database 11g
  • Oracle 10g和Oracle 11g网格技术介绍
  • SCO unix下安装oracle,但没有光盘,请大家推荐一个oracle下载站点(unix版本的)。谢谢!!!!
  • oracle中如何把表中具有相同值列的多行数据合并成一行
  • 请问大家用oracle数据库, 用import oracle.*;下的东西么? 还是用标准库?
  • Oracle 数据库(oracle Database)性能调优技术详解
  • Linux /$ORACLE_HOME $ORACLE_HOME
  • ORACLE日期相关操作
  • Linux系统下Oracle的启动与Oracle监听的启动
  • ORACLE数据库常用字段数据类型介绍
  • 请问在solaris下安装ORACLE,用root用户和用oracle用户安装有什么区别么?
  • Oracle 12c的九大最新技术特性介绍
  • 网间Oracle的连接,远程连接Oracle服务器??


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3