高级 rman 备份问题求助

hem 2006-11-23 10:10:33
备份脚本:
#!/bin/sh
source /home/oracle/.bash_profile

cd $ORACLE_HOME/bin

./rman target / catalog rman/rman@244 msglog=/home/oracle/work/log/rman_bk_L0_`date '+%Y%m%d%H%M%S'`.log <<EOF

run {
allocate channel c1 type disk;
backup incremental level 0 filesperset 5 tag 'dbL0' format '/mnt/raid/rman_bk/ora_o_%d_%t%s%p%u' database skip readonly include current controlfile;
sql 'alter system archive log current' ;
backup(archivelog all format '/mnt/raid/rman_bk/ora_a_%d_%t%s%p%u');
release channel c1;
}

list backup;
exit;

EOF


数据文件 控制文件 Spfile 文件都成功备份完毕,可是以前的归档日志都被我删了,新的归档日志还保留着,以后恢复是否还能完全恢复,还是只能恢复到当前时间点?
备份日志如下:
Starting Control File and SPFILE Autobackup at 2006-11-22 20:36:32
piece handle=/oracle/product/9.2.0.4/dbs/c-810128133-20061122-00 comment=NONE
Finished Control File and SPFILE Autobackup at 2006-11-22 20:36:37

sql statement: alter system archive log current

Starting backup at 2006-11-22 20:36:51
current log archived
released channel: c1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of backup command at 11/22/2006 20:36:56
RMAN-06059: expected archived log not found, lost of archived log compromises recoverability
ORA-19625: error identifying file /mnt/raid/oradata/arch/lrdb/1_5084.dbf
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory
Additional information: 3

RMAN>
...全文
211 点赞 收藏 5
写回复
5 条回复
hem 2006年11月30日
完全备份脚本 这样可以吗?
run {
allocate channel c1 type disk;
backup full tag 'dbfull' filesperset 5 format '/mnt/raid/rman_bk/ora_o_%d_%t%s%p%u' database ;
sql 'alter system archive log current' ;
backup filesperset 3 archivelog all delete input;
release channel c1;
}
参考 http://www.csdb.cn/viewPaper.jsp?tipid=1148522318476
回复 点赞
hem 2006年11月30日
备份脚本:改成这样 它还会提示以前备份的归档日志不存在吗?
#!/bin/sh
source /home/oracle/.bash_profile

cd $ORACLE_HOME/bin

./rman target / catalog rman/rman@244 msglog=/home/oracle/work/log/rman_bk_L0_`date '+%Y%m%d%H%M%S'`.log <<EOF

run {
sql 'alter system archive log current' ;
allocate channel c1 type disk;
backup database filesperset 5 tag 'dbFull' format '/mnt/raid/rman_bk/ora_o_%d_%t%s%p%u'
plus archivelog format '/mnt/raid/rman_bk/ora_a_%d_%t%s%p%u'
delete all input ;
release channel c1;
}

list backup;
exit;

EOF
回复 点赞
hem 2006年11月29日
能给我一个全数据库备份的脚本吗? 备份完毕之后以前的日志就可以删除了吧。
回复 点赞
xiaolife 2006年11月24日
如果你在1_5084.dbf之后做了全备份而且以后的归档日志都在,就能完全恢复。
但从上面来看,你在1_5084.dbf之前做了全备份,而且以后的归档日志已经丢了,所以只能恢复到1_5084.dbf那个时间之前。
用resetlog重起数据库,并进行全库备份,这样以后的操作就没问题了。但之前的备份都没用了
回复 点赞
hem 2006年11月23日
为什么是从1_5084.dbf 开始 而不是从1_1.dbf 开始
回复 点赞
发动态
发帖子
Oracle 高级技术
创建于2007-09-28

2929

社区成员

1.8w+

社区内容

Oracle 高级技术相关讨论专区
社区公告
暂无公告