`
哇哈哈852
  • 浏览: 92117 次
文章分类
社区版块
存档分类
最新评论

RMAN表空间时间点恢复

阅读更多


一直想做个基于时间点的表空间恢复,今天测试了一下,做个笔记,方面以后查阅!

环境:Linux 5.2  10.2.0.1

RMAN TSPITR 使用rman进行表空间基于时间点的恢复

实例说明:

(1)先创建2个表空间。

create tablespace user01  datafile '+DG1' size 1M;

create tablespace user02  datafile '+DG1' size 1M;

(2)在每个表空间上各创建一张表。

create table scott.customers

(cust_id int,cust_name varchar2(10)) tablespace user01;

create table scott.sales

      (id int,cust_name varchar2(10),sales_amount number(8,2)) tablespace user02;

(3)在每个表中插入2条记录,提交。检查当前的时间点,待会表空间user01要恢复到当前时间点。

insert into scott.customers values(1,'SOCTT');

insert into scott.customers values(2,'SMITH');

insert into scott.sales values(1,'SCOTT',8000);

insert into scott.sales values(1,'SMITH',10000);

COMMIT;

ALTER SYSTEM SWITCH LOGFILE;

ALTER SYSTEM SWITCH LOGFILE;

ALTER SYSTEM SWITCH LOGFILE;

date

2012年 02月 29日 星期三 22:53:57 CST

(4) truncate 表1,往表2中插入2条记录。在表空间1中再创建一个表。

truncate table scott.customers;

insert into scott.sales values(3,'SCOTT',6000);

insert into scott.sales values(4,'BLAKE',6700);

commit;

create table scott.employee(id int,name varchar2(10)) tablespace user01;

(5) 利用rman进行表空间1基于时间点的恢复。

--rman部分恢复表空间

recover tablespace user01

until time "to_timestamp('2012-02-29 22:53:57','yyyy-mm-dd hh24:mi:ss')"      ----此处也可以通过scn来恢复,二者等价timestamp_to_scn

auxiliary destination '/home/Oracle/backup';

(6)将表空间user01 联机, 检查表1的数据是否找回来,检查表2的数据是否是4条,检查新创建的表是否已经不存在。

alter tablespace user01 online;    ---recover的时候会自动offline

select * from scott.customers;

       CUST_ID CUST_NAME

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

         1 SOCTT

         2 SMITH

select * from scott.sales;

         ID CUST_NAME  SALES_AMOUNT

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

         1 SCOTT              8000

         1 SMITH             10000

         3 SCOTT              6000

         4 BLAKE              6700

select * from dba_tables where owner = 'SCOTT' and table_name='EMPLOYEE';

no rows selected

一切如我们所愿,此时,表空间不完全恢复完成。

注意:

只有自包含的表空间,才能基于单独不完全恢复。所谓自包含,是指该表空间中的对象不依赖于其它表空间中的对象,如该表空间中索引的基本在其它表空间,该表中某些表的lob列放在其它表空间。

如在上例中,执行:

create index scott.idx_customers on scott.customers(cust_name) tablespace user02;

begin

       dbms_tts.transport_set_check('user02',true);

end;

select * from transport_set_violations;

会提示:Index SCOTT.IDX_CUSTOMERS in tablespace USER02 points to table SCOTT.CUSTOMERS in tablespace USER01.

begin

       dbms_tts.transport_set_check('USER01,user02',true);

end;

select * from transport_set_violations;

不会有任何提示,因为user01/user02表空间作为一个集合,是自包含的。
  • 大小: 26.6 KB
分享到:
评论

相关推荐

    【RMAN】TSPITR表空间基于时间点的恢复.pdf

    本文将详细探讨通过RMAN进行TSPITR(Tablespace Point-In-Time Recovery,表空间时间点恢复)的操作过程。 TSPITR是Oracle数据库恢复技术中的一项高级特性,它允许我们把一个或多个表空间恢复到数据库中其他部分所...

    rman备份恢复详解

    下面将详细介绍RMAN自动备份和恢复的相关知识点。 一、为什么需要设置自动归档模式? 在使用RMAN进行备份和恢复时,需要将数据库修改为自动归档模式。为什么需要这样做呢?主要是因为,如果不设置为自动归档模式,...

    rman备份与恢复(教程与案例)

    2. 不完全恢复:如果仅部分数据丢失,RMAN可以恢复特定时间段内的事务。 3. 数据文件恢复:当单个数据文件损坏时,RMAN可利用该文件的备份进行恢复。 4. 闪回恢复:利用闪回区和闪回日志,RMAN可以快速将数据库...

    RMAN备份与恢复

    这可能包括了如何处理丢失的数据文件、闪回数据库到特定时间点,甚至是使用RMAN的Catalog数据库来管理跨系统的备份。 总之,RMAN是Oracle数据库管理中的核心工具,它提供了全面的备份和恢复解决方案,确保了数据的...

    RMAN管理的备份和恢复.pdf

    ### RMAN管理的备份与恢复知识点详解 #### 一、RMAN概述 RMAN(Recovery Manager)是Oracle提供的一款强大的备份与恢复工具,旨在帮助DBA高效地管理和执行数据库的备份与恢复任务。相较于传统的手工备份恢复方法,...

    详细、完整的介绍使用RMAN对数据库进行备份及恢复

    RMAN提供了多种恢复场景的解决方案,如从备份恢复数据库、恢复单个数据文件、从时间点恢复等。在灾难性故障下,可以使用`RESTORE DATABASE`和`RECOVER DATABASE`命令来恢复整个数据库,而`RESTORE TABLESPACE`或`...

    一个完整的Oracle rman备份恢复参考示例

    如果需要恢复整个数据库,可能还需要使用到还原点或时间点恢复。 8. 使用Catalog和Control File: 为了方便管理和跟踪备份,RMAN使用Catalog数据库存储所有备份信息。控制文件则包含了数据库的结构信息,恢复过程...

    基于RMAN+可传输表空间TTS迁移AIX平台数据库到Linux

    RMAN可以选择性地恢复数据,根据备份中的时间点或SCN,这使得数据迁移更加灵活。 6. 数据库迁移准备:在进行数据库迁移前,通常需要收集如数据库版本、操作系统信息、表空间大小、数据量、用户权限等信息,并编写...

    oracle 11g rman 备份与恢复

    2. **恢复**:在数据丢失或系统故障的情况下,RMAN能够快速恢复数据库到特定时间点。它可以处理各种类型的恢复场景,如单个文件恢复、表空间恢复,甚至整个数据库的恢复。 3. **归档日志管理**:RMAN能够管理数据库...

    Oracle 9i 培训资料:使用RMAN的高级备份和恢复

    7. **闪回技术**:配合Oracle 9i的闪回技术,RMAN可以进行基于时间点的恢复,即使在数据丢失后也能快速恢复到特定时间点。 8. **跨平台恢复**:RMAN支持在不同操作系统或硬件环境之间的恢复,增加了系统的灵活性和...

    rman 异机恢复 更改数据文件目录恢复文档

    使用`RECOVER DATABASE UNTIL`命令指定时间点或SCN,RMAN将自动应用所有必要的归档日志。 通过以上步骤,我们可以在保持数据完整性的同时,将Oracle数据库从源服务器恢复到具有不同数据文件目录的目标服务器。整个...

    rman异构恢复.zip

    例如,可能有全库备份、只备份改变的数据文件、或者基于时间点的恢复等不同类型的脚本。 学习和理解RMAN及其异构恢复,对于数据库管理员来说是非常必要的技能。通过实践和模拟实验,你可以更好地掌握RMAN的用法,...

    rman备份与恢复实例

    - 在归档模式下使用 RMAN 命令进行恢复时,需要特别注意恢复点的选择,确保恢复的是在某个时间点之前的数据。 **2.3** **归档模式下的redo log文件管理** - **[3]** **Redo Log 文件的管理:** - 在归档模式下,...

    原创实战Oracle RAC rman恢复

    RMAN的`FLASHBACK DATABASE`命令可以将数据库恢复到之前的某个时间点,而无需原始备份。但这种操作需要启用归档模式和还原点。 此外,为了优化恢复效率,RAC环境通常配置了Fast Start Failover(FSFO),当主实例...

    RMAN异机恢复实践全图解析

    8. **恢复序列化**:如果源数据库有归档日志,需要通过`RECOVER DATABASE UNTIL CUTOFF`或`RECOVER DATABASE NOREDO`命令进行时间点恢复,确保数据一致性。 9. **调整参数**:根据需要调整数据库参数,如`DB_UNIQUE...

    RMAN使用手册(oracle备份恢复工具rman的使用方法)

    4. **切换还原的表空间在线**:在恢复表空间后,使用`alter tablespace users online;`使其可读写。 5. **介质恢复**:当数据文件丢失时,需要从备份中恢复,`restore datafile '/u01/oracle/data/users01.dbf' ...

    Centos7.6下Oracle开启归档日志和Rman恢复.docx

    在恢复过程中,RMAN可以用来恢复到特定时间点,这对于处理灾难性故障或误删除数据的情况非常有用。 要进行RMAN恢复,首先需要确保有有效的备份集。使用RMAN的`backup`命令创建备份,然后在需要恢复时,使用`restore...

Global site tag (gtag.js) - Google Analytics