ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

oracle 还原点(restore point)

2021-03-26 17:52:55  阅读:237  来源: 互联网

标签:restore SCN database point SQL oracle 还原点


一 操作(继操作之后有理论介绍)

保证还原点操作

保证还原点操作(需要sys用户,显示删除)
SQL> create RESTORE POINT liufeng    GUARANTEE FLASHBACK DATABASE;
Restore point created.
SQL> select scn,name from v$restore_point;
       SCN	NAME
----------------------------------
    966338   LIUFENG
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount
ORACLE instance started.
Total System Global Area  776646656 bytes
Fixed Size		    2257272 bytes
Variable Size		  507514504 bytes
Database Buffers	  264241152 bytes
Redo Buffers		    2633728 bytes
Database mounted.
SQL> flashback database to restore point liufeng;
Flashback complete.
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01589: must use RESETLOGS or NORESETLOGS option for database open
SQL> alter database open RESETLOGS;
Database altered.
SQL> drop restore POINT liufeng;
Restore point dropped.
SQL> select scn,name from v$restore_point;
no rows selected

普通还原点

普通还原点(自动维护、开启FLASHBACK_ON)
SQL> select flashback_on from v$database;
FLASHBACK_ON
------------------
NO
SQL> alter database flashback on;
Database altered.
SQL> create restore POINT liufeng;
Restore point created.
SQL> select scn,name from v$restore_point;
       SCN	NAME
----------------------------------
    967227   LIUFENG
SQL> drop table scott.leo;
Table dropped.
SQL> flashback database to restore point liufeng;
flashback database to restore point liufeng
*
ERROR at line 1:
ORA-38757: Database must be mounted and not open to FLASHBACK.
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01589: must use RESETLOGS or NORESETLOGS option for database open
SQL> alter database open RESETLOGS;
Database altered.
SQL> select * from scott.leo;
	ID NAME 		MZ
---------- -------------------- --------------------
         1 李四                 汉
         2 张三                 蒙

二 基本概念:

 还原点(restore point)是oracle 10gR2 配合Flashback database推出的新特性。restore point也可单独使用。Flashback database提供了数据库整个回滚到之前的某时间点的功能,相当于使用之前某个备份基于时间点的恢复,但比其更有效率,因为无需执行备份数据文件的复制。

三 分类:

普通还原点: 创建正常还原点会将还原点名称分配给SCN或特定时间点。因此,还原点作为此SCN的别名。在执行任何可能需要反转的操作之前,您可以创建一个正常的还原点。控制文件存储还原点和SCN的名称。

  

    保证还原点:

与正常还原点一样,保证还原点在恢复操作中充当SCN的别名。一个主要区别是,保证恢复点永远不会超出控制文件,并且必须显式删除。通常,您可以使用保证还原点作为SCN的别名,其任何命令都可以与正常还原点配合使用。除另有说明外,关于在哪里以及如何使用正常还原点的信息也适用于保证还原点。
    保证还原点确保您可以使用Flashback数据库将数据库倒回还原点SCN的状态,即使禁用了Flashback日志的生成。如果启用了闪回日志记录,则保证还原点将强制将闪回数据库所需的闪回日志保留到最早的保证还原点后的任何SCN。因此,如果启用闪回日志记录,您可以将数据库倒回连续体中的任何SCN,而不仅仅是单个SCN。

四  限制:

闪回数据库只能撤销Oracle对数据文件所做的更改。它不能用于修复媒体故障,也不能用于从数据文件意外删除中恢复。
不能使用Flashback数据库撤销收缩数据文件操作
如果数据库控制文件从备份恢复或重新创建,则所有累积的闪回日志信息将被丢弃。
当在进行NOLOGGING操作的目标时间使用Flashback数据库时,受NOLOGGING操作影响的数据库对象和数据文件中可能会发生块损坏。


标签:restore,SCN,database,point,SQL,oracle,还原点
来源: https://blog.51cto.com/11298469/2673378

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有