当前位置:  数据库>oracle

Oracle 10g 闪回数据库中的恢复点

    来源: 互联网  发布时间:2017-03-29

    本文导语:   还记得 SQL 中保存点的概念吗?在一个事务中,您可以创建保存点,进行某些修改,创建另一个保存点,等等。如果这些更改不是您想要的,则您所要做的就是将它们回滚到某个具体的保存点。   现在,我们将介绍 Oracle ...

  还记得 SQL 中保存点的概念吗?在一个事务中,您可以创建保存点,进行某些修改,创建另一个保存点,等等。如果这些更改不是您想要的,则您所要做的就是将它们回滚到某个具体的保存点。

  现在,我们将介绍 Oracle 数据库 10g 中引入的一个新功能 — 闪回数据库。通过它您可以将数据库倒回到前一个时间点。在这种情况下拥有一个与保存点类似的功能(即能够倒回到一个有名称的点,而不仅仅是一个时间点)岂不是很好?

  在 Oracle 数据库 10g 第 2 版中,您可以使用一个名为恢复点的新功能来实现该操作。以下是它的工作方式。假设有一个长期运行的处理(涉及多个必须按顺序运行的批处理程序)。

以下是事件序列:

创建恢复点 rp1
运行批处理作业 1
创建恢复点 rp2
运行批处理作业 2
等等。 批处理作业 2 在执行过程中失败,您需要将数据库恢复到一致的状态。 您不必将它一直恢复到运行的开始阶段。 由于恢复点 rp2 是在批处理作业执行之前创建的,因此只需将数据库闪回到该恢复点。



  使用以下代码创建一个恢复点
create restore point before_monthend_200503;

  现在根据当前的数据库时间和 SCN 创建了恢复点 BEFORE_MONTHEND_200503。如果要确保可以将数据库闪回到某个特定恢复点,可以通过按如下所示创建有保证的恢复点来指定 guarantee:
create restore point before_monthend_200503 guarantee flashback database;

  可以通过从动态性能视图 V$RESTORE_POINT 中执行 SELECT 来确认该恢复点是否存在:
SQL> select * from v$restore_point; SCN DATABASE_INCARNATION# GUA STORAGE_SIZE TIME NAME
---------------------------------------------------
1429811 1 YES 8192000 27-MAR-05 05.18.39.000000000 PM BEFORE_MONTHEND_200503


  稍后当您要将数据库闪回到该恢复点时,您只需发出:
flashback database to restore point before_monthend_200503;

  如果检查警报日志,它将显示一个类似如下的行:
Media Recovery Applied UNTIL CHANGE 1429814

  恢复点(尤其是有保证的恢复点)在许多与数据库相关的任务中非常有用。 QA 数据库就是一个典型示例。在该数据库中,您可能要建立一个恢复点、运行某些测试并闪回到恢复点,从而使数据库看起来好象什么也没发生一样。然后,您可以执行另一轮测试,并再次将它恢复到恢复点。


    
 
 

您可能感兴趣的文章:

  • oracle10g 数据备份与导入 iis7站长之家
  • 关于系统重装后Oracle数据库完全恢复的解决办法
  • oracle drop table(表)数据恢复方法
  • Oracle数据库备份和恢复工具 RMan
  • oracle备份恢复的具体方法
  • oracle中误删除表后恢复语句(FLASHBACK)
  • oracle冷备份恢复和oracle异机恢复使用方法
  • 在Oracle 10gR2中设定指定的恢复点实现轻松闪回
  • Oracle重做日志文件损坏或丢失后的恢复
  • Oracle11g备份和恢复功能的提高
  • 实战Oracle数据库备份与恢复
  • Oracle数据库冷备份的异地恢复
  • oracle下实现恢复一个丢失的数据文件的代码
  • 详解通过Backup Exec来实施Oracle灾难恢复
  • Oracle的恢复管理器及DBMS_JOB包分析
  • Oracle数据库文件恢复以及备份思路
  • Oracle数据库备份恢复最佳实践
  • oracle如何恢复被覆盖的存储过程
  • rman恢复方案和oracle异机恢复
  • oracle数据库创建备份与恢复脚本整理
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • Oracle 数据库开发工具 Oracle SQL Developer
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • 请问大家用oracle数据库, 用import oracle.*;下的东西么? 还是用标准库?
  • Oracle 数据库(oracle Database)性能调优技术详解
  • 关于JDBC连接Oracle数据库,是否必须有Oracle客户端
  • ORACLE数据库常用字段数据类型介绍
  • win2000+jbuilder6+oracle817编出的程序,在win2000下执行很好,在win98下却访问不了oracle数据库
  • oracle数据库导出和oracle导入数据的二种方法(oracle导入导出数据)
  • Oracle发布Oracle SQL Developer 1.2数据库开发工具 帮助用户简化开发工作
  • 怎样调出ORACLE数据库中的数据,该如何连接?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • oracle中如何把表中具有相同值列的多行数据合并成一行
  • jsp文件上传smartupload到oracle数据库中没有longblob的数据类型如何处理的?
  • 将Oracle 8i数据成功移植Oracle 10g的方法
  • 我从JSP页将数据插入到oracle数据库中,为何汉字插入后数据库中显示为乱码呢?
  • 紧急求救:对Oracle数据库中long 型数据进行模糊查询 如何查?
  • Linux下Oracle数据库,dbstart持续不动,数据库无法启动解决
  • 紧急求救:jsp对Oracle数据库中long 型数据进行模糊查询 如何查?
  • 请问:ORACLE中的数据取出来后,需不需要进行一定的转换才能变为C语言的数据类型啊?
  • 手把手教你Oracle数据库导出数据库结构到PowerDesigner
  • Oracle与FoxPro两数据库的数据转换步骤
  • Oracle 对数据文件大小的限制
  • 取数据库前几条数据(sql server、oracle、mysql)的sql写法
  • oracle数据库入门知识简述
  • linux下用什么办法连接oracle数据库并且读取数据呢?(用c++代码实现时)
  • 深入理解Oracle数据库的启动和关闭
  • 轻松理解Oracle数据库中的物理结构
  • 用java怎样实现oracle数据库表和excel数据表的转换
  • 高手相送,jsp连接oracle数据库后,显示数据为乱码?
  • jbuilder6 中怎样引入oracle 数据访问包
  • 有关结果数据集的修改-java和ORACLE数据库
  • oracle10g 数据备份与导入
  • Oracle 12c发布简单介绍及官方下载地址
  • 在linux下安装oracle,如何设置让oracle自动启动!也就是让oracle那个服务自动启动,不是手动的
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle 10g和Oracle 11g网格技术介绍
  • Oracle EBS R12 支持 Oracle Database 11g
  • ORACLE日期相关操作
  • SCO unix下安装oracle,但没有光盘,请大家推荐一个oracle下载站点(unix版本的)。谢谢!!!!


  • 站内导航:


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

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

    浙ICP备11055608号-3