利用 Tivoli Storage Manager 磁带库中的备份恢复 Oracle

公司的 Oracle 数据库的备份工具使用的是 IBM 公司的 Tivoli Storage Manager (TSM),它主要的功能是自动将 Oracle RMAN 备份数据写入磁带库。网上有很多配置 Tivoli 和 RMAN 实现自动写入磁带库的方案,不过写的都不太具体,这几天我一直在看 Tivoli 的教程,过些天我会写一篇详细的配置博文,感兴趣的朋友可以关注一下。闲话少说,让我们进入今天的主题吧。因为 TSM 也是利用 RMAN 实现备份并写入磁带库的,所以恢复数据库的过程基本是个 RMAN 备份过程的逆过程。找到 TSM 的 RMAN 备份脚本文件 rman_FULL_tape.rcv,其内容如下:
run {
configure controlfile autobackup on;
configure controlfile autobackup format FOR DEVICE TYPE ‘sbt_tape’ TO ‘CF_%d_%T_%F’;
configure retention policy to recovery window of 7 days;
allocate channel t1 type ‘sbt_tape’ parms
‘ENV=(TDPO_OPTFILE=/opt/tivoli/tsm/client/oracle/bin/tdpo.opt)’;
BACKUP
FULL
filesperset 5
FORMAT ‘FULL_%d_%T_%U’
DATABASE include current controlfile;
RELEASE CHANNEL t1;
allocate channel t2 type ‘sbt_tape’ parms
‘ENV=(TDPO_OPTFILE=/opt/tivoli/tsm/client/oracle/bin/tdpo.opt)’;
sql ‘alter system archive log current’;
crosscheck archivelog all;
BACKUP
filesperset 10
FORMAT ‘ARCH_%d_%T_%U’
ARCHIVELOG ALL DELETE INPUT;
crosscheck backup;
DELETE NOPROMPT EXPIRED BACKUP;
DELETE NOPROMPT OBSOLETE;
release channel t2;
}
找到 RMAN 备份脚本后,参照备份脚本编写恢复脚本即可,如下内容是详细的恢复操作流程:
$ export NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1
$ export NLS_DATE_FORMAT=”DD-MM-YYYY HH24:MI:SS”RMAN> shutdown immediate;
RMAN> startup mount;
RMAN>RUN {
allocate channel t1 type ‘sbt_tape’ parms
‘ENV=(TDPO_OPTFILE=/opt/tivoli/tsm/client/oracle/bin/tdpo.opt)’;
SET UNTIL TIME = ’12-05-2011 12:00:00′;
RESTORE DATABASE;
RECOVER DATABASE;
RELEASE CHANNEL t1;
ALTER DATABASE OPEN RESETLOGS; }
在实际的操作中,我遇到了以下错误:
using target database control file instead of recovery catalog
RMAN-00571: ====================================================
RMAN-00569:
=============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ====================================================
RMAN-03009: failure of allocate command on t1 channel at 05/05/2011 19:30:57
ORA-19554: error allocating device, device type: SBT_TAPE, device name:
ORA-27000: skgfqsbi: failed to initialize storage subsystem (SBT) layer
Linux Error: 106: Transport endpoint is already connected
Additional information: 7011
ORA-19511: Error received from media manager layer, error text:
SBT error = 7011, errno = 106, sbtopen: system error
这个错误的原因我是在这篇 文章 中找到的。这个错误在一般情况下不会遇到,由于实际操作的系统中有两套 Oracle 数据库并分别运行一个实例(不知道当初为什么不直接运行两个实例),所以它使用了两个不同 Linux 用户来进行管理,这就产生了恢复过程中的操作权限问题。解决办法很简单,操作如下:
chown -R orasug:dba /opt/tivoli/tsm/client
更改权限后,运行重新执行下恢复脚本,即可成功从 TSM 的磁带库中提取备份文件并把 Oracle 数据库恢复到制定时间,需要说明的是,由于我们执行的是不完全恢复,因此必须在选项中加入 RESETLOGS 选项,这样的后果是系统重做日志文件或归档日志文件的 SCN 全部归零,这样数据库无法恢复到本次恢复演练前的状态,所以我们在演练前对数据库进行了冷备份,这样我们可以在演练成功后把 Oracle 数据库恢复到演练前的状态,如果你不太了解 Oracle 的冷备份,请参考这篇文章。
相关日志:
- 2011年05月18日 -- RMAN 整库备份异机恢复流程 (0)
- 2011年04月29日 -- 冷备份 Oracle 的流程 (2)
- 2012年05月11日 -- 了解 Oracle Ksplice (0)
- 2011年11月24日 -- 在 RHEL 5.5 下安装 Cognos Server (0)
- 2011年10月16日 -- 在 RHEL 5.5 下应用 RHCS 实现 Oracle HA (0)
- 2011年10月11日 -- Oracle HA 脚本 (0)
Categories
- 信息世界 | IT (95)
- Certification (1)
- Cloud Computing (1)
- Database (16)
- Google (10)
- Hardware (2)
- J2EE (4)
- Network (19)
- OS (18)
- Programming (11)
- Virtualization (1)
- Webmaster (11)
- 数码先锋 | Digital (17)
- 时事评论 | Event (5)
- 时光飞驰 | News (2)
- 杂七杂八 | Mix (2)
- 流金岁月 | Life (8)
- 游戏志 | Game (13)
- 看电影 | Movie (10)
- 红魔拥趸 | ManUtd (5)
- 读书频道 | Reading (1)
- 音乐无限 | Music (4)
- 信息世界 | IT (95)
Twitter
- I'm at 大连国美电器胜利新活馆 (大连市, 辽宁省) http://t.co/f7pxcNfg 17 小时前
- I'm at Xinghai Square | 星海广场 (Dalian, China) http://t.co/gKNqq2qV 23 小时前
- I'm at 壹品星海 (Dalian, China) http://t.co/o7SCCIrG 23 小时前
- 晚上和以前的同事喝了点酒,准备睡觉了,希望明天能把公司的电脑修好,没有电脑办公还真不方便,不知道明天印度那边有没有培训的消息。 2012-05-16
- 非常值得读的一本书! http://t.co/lV8ulDnV 2012-05-16
- I'm at 大连软件园15号楼 (大连市, 辽宁省) http://t.co/03DYYUKY 2012-05-16
- @yamiugly 好奇你做的是什么工作? 2012-05-16
- I'm at 壹品星海 (Dalian, China) http://t.co/frkQvlIn 2012-05-15
- I just ousted @fndhrt as the mayor of 大连软件园15号楼 on @foursquare! http://t.co/yn7fSLY6 2012-05-15
- I'm at 大连软件园15号楼 (大连市, 辽宁省) http://t.co/KH2m2Z4R 2012-05-15
- @terrysosi_chan 小日子过的太充实了! 2012-05-15
- RT @GossipSama: 玩diablo 2的时候我23岁,玩diablo 3的时候我34岁。暴雪是要等我不再2了才出3是么?那是不是要45岁才玩到4? 2012-05-15
- I'm at 中山广场 Zhongshan Circus (大连, 中国) http://t.co/fiD6vqHS 2012-05-14
- 英超还真他妈的好看。昨晚90分钟的比赛,跟坐过山车一样,如果不看直播,是体会不到这种刺激的,呵呵,英超第20年,今年的冠军真的很有戏剧性,恭喜曼城,明年的曼联面对的局势更难,曼城还会加大投入的,看看曼城现在的阵容,明年再买几个强援,大耳朵杯指日可待! 2012-05-14
- @Fatal1tyV 怎么弄? 2012-05-14
Latest Comments
Foursquare Checkins
标签




