您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

使用RMAN进行表空间TSPITR自动恢复

2024/2/18 7:54:17发布19次查看
oracle发展到今天,在备份还原领域已经构建了完善的解决方案体系。绝大多数情况下,我们的备份还原需求都可以用oracle成熟方案实
oracle发展到今天,在备份还原领域已经构建了完善的解决方案体系。绝大多数情况下,我们的备份还原需求都可以用oracle成熟方案实现的。tspitr(tablespace point in time recover)数据表空间定点恢复是我们在实践中偶尔会使用的一种恢复场景。本篇就围绕这个问题进行讨论实验。
--------------------------------------分割线 --------------------------------------
推荐阅读:
rman 配置归档日志删除策略
oracle基础教程之通过rman复制数据库
rman备份策略制定参考内容
rman备份学习笔记
oracle数据库备份加密 rman加密
--------------------------------------分割线 --------------------------------------
1、聊聊tspitr
严格的说tspitr是一种相对细粒度的不完全恢复技术。我们通常见到的还原操作,都是将所有的表空间和数据还原到相同的一个时间点上,无论是否是故障恢复点。而tspitr则是以表空间为粒度单元,单独将某个表空间内容还原到一个特定可恢复时间点上。
举一个例子:一个oracle数据库运行在归档模式下,在夜间零时保留一份完全备份。早上七点时候,某个特定表空间上数据表(单个表独占表空间)发生一个误操作,数据损坏。要求在不伤害其他数据表数据的情况下,,将表空间数据恢复到早上六点。
这样部分数据恢复的场景,就是tspitr的典型应用。我们在实际场景中,常常希望恢复部分的数据到过去时间点上,而不希望对现有数据进行补录。
tspitr目前最方便的方法是使用rman进行自动的恢复。其使用前提为两个,一个是必须存在相应的备份集合,另一个是表空间对象是“self-contain”,也就是其他表空间中不包括与这个表空间对象相关的对象数据。
恢复步骤和原理如下:
ü  rman三个对象集合:catalog、target和auxiliary。其中auxiliary就是用于辅助target各种备份还原要求的操作数据库。这个库在tspitr中扮演临时数据还原作用的;
ü  首先完成数据检查工作,确定备份集合和表空间完整性;
ü  当前时间是t1,如果需要将数据还原为t0。使用rman提取备份数据集合,还原到auxiliary上形成一个新的实例数据库。选择性应用归档日志序列,还原auxiliary到to时间点;
ü  使用expdp工具从auxiliary中导出目标表空间为dump对象。注意:还原auxiliary并不是100%重建target,而是选择系统运行表空间和目标表空间;
ü  在target数据库中删除原表空间。使用impdp工具导入dump文件进入target数据库;
ü  清理环境,将创建的auxiliary数据库删除;
这种系列操作,我们如果使用rman命令系列是可以逐步完成的。自动化rman的tspitr操作也是对这个过程的完全自动化运行。下面我们通过实验来进行演示操作。
2、环境准备
我们选择oracle 11gr2进行试验。
sql> select * from v$version;
banner
-----------------------------------------
oracle database 11g enterprise edition release 11.2.0.1.0 - production
pl/sql release 11.2.0.1.0 - production
core 11.2.0.1.0 production
tns for linux: version 11.2.0.1.0 - production
nlsrtl version 11.2.0.1.0 – production
sql> select log_mode from v$database;
log_mode
------------
archivelog
创建实验表空间和实验数据表t。注意:由于我们使用的是11.2.0.1版本,如果使用sys用户进行测试,会引起bug 12411104 : rman duplicate rman-05548 when connected to target。为避免问题,我们切换入scott用户执行。
sql> create tablespace tsptiptbl datafile size 100m autoextend off
2  extent management local uniform size 1m
3  segment space management auto;
tablespace created
--切换到scott用户进行试验,这个很重要!!(在11.2.0.1版本上)
sql> conn scott/tiger@wilson ;
connected to oracle database 11g enterprise edition release 11.2.0.1.0
connected as scott
sql> create table t tablespace tsptiptbl as select * from dba_objects;
table created
保留一个备份集合。
bs key  type lv size      device type elapsed time completion time
------- ---- -- ---------- ----------- ------------ ---------------
142    full    1.33g      disk        00:02:52    16-feb-14     
        bp key: 142  status: available  compressed: no  tag: tag20140216t191156
piece name: /u01/flash_recovery_area/wilson/backupset/2014_02_16/o1_mf_nnndf_tag20140216t191156_9j177yk1_.bkp
list of datafiles in backup set 142
(篇幅原因,有省略……)
bs key  size      device type elapsed time completion time
------- ---------- ----------- ------------ ---------------
143    21.50k    disk        00:00:00    16-feb-14
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product