ITPUB论坛-中国最专业的IT技术社区

 找回密码
 注册
查看: 300|回复: 7

[备份恢复] 9i RMAN无法恢复归档日志?

[复制链接]
论坛徽章:
0
发表于 2017-7-17 08:26 | 显示全部楼层 |阅读模式
备份策略是周日全备份,每天备份归档日志。
结果恢复的时候,用RMAN 备份的归档日志一个都没恢复出来,RECOVER的时候就无法继续了。
10G 可以用CATALOG START WITH 手工添加归档日志备份片,9I下没有这个命令呢。


RMAN> recover database;

Starting recover at 17-JUL-17
using channel ORA_DISK_1

starting media recovery

Oracle Error:
ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below
ORA-01194: file 1 needs more recovery to be consistent
ORA-01110: data file 1: '/oracle/data1/system.data1'

RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 07/17/2017 08:01:29
RMAN-06053: unable to perform media recovery because of missing log
RMAN-06025: no backup of log thread 1 seq 2109769 scn 389934211052 found to restore
RMAN-06025: no backup of log thread 1 seq 2109768 scn 389934137589 found to restore
RMAN-06025: no backup of log thread 1 seq 2109767 scn 389934135330 found to restore



论坛徽章:
116
现任管理团队成员
日期:2011-05-07 01:45:08娜美
日期:2017-08-29 10:15:28
发表于 2017-7-17 08:41 | 显示全部楼层
9i没有将这个命令进行封装,但是你可以手动用dbms_backup_restore来实现catalog命令的效果

使用道具 举报

回复
论坛徽章:
0
 楼主| 发表于 2017-7-17 09:38 | 显示全部楼层
zergduan 发表于 2017-7-17 08:41
9i没有将这个命令进行封装,但是你可以手动用dbms_backup_restore来实现catalog命令的效果

谢谢版主!已经在恢复归档日志了。

不过还有个疑问,看到用DBMS手动恢复都是因为控制文件丢失的情况,我控制文件是正常备份和恢复的,为啥也需要这样?RMAN 不会自动去恢复归档日志吗?

使用道具 举报

回复
论坛徽章:
116
现任管理团队成员
日期:2011-05-07 01:45:08娜美
日期:2017-08-29 10:15:28
发表于 2017-7-17 09:45 | 显示全部楼层
junior00 发表于 2017-7-17 09:38
谢谢版主!已经在恢复归档日志了。

不过还有个疑问,看到用DBMS手动恢复都是因为控制文件丢失的情况, ...

所谓的控制文件丢失,是说控制文件中中的备份“元数据”丢失,也就是说,rman无法获取到“备份集”的文件名(handle)和内容。
所以需要你手动指定这些输入给rman

其实rman本质上就是调用dbms_backup_restore来实现的备份和恢复。只不过这个包的执行时的参数来自于控制文件中的”备份元数据“,你手动调用这个包,手动输入这些参数,就可以跳过读取”元数据“的过程。

使用道具 举报

回复
论坛徽章:
116
现任管理团队成员
日期:2011-05-07 01:45:08娜美
日期:2017-08-29 10:15:28
发表于 2017-7-17 09:46 | 显示全部楼层
catalog命令的实际效果,就是读取备份集,将元数据写入controlfile中,然后再实现自动调用dbms_backup_restore来自动完成恢复

使用道具 举报

回复
论坛徽章:
0
 楼主| 发表于 2017-7-17 10:55 | 显示全部楼层
谢谢版主解答恢复原理,但为啥控制文件中的备份“元数据”会丢失?我的脚本有问题吗?

周日全备份:
run{
allocate channel c1 type disk;
allocate channel c2 type disk;
allocate channel c3 type disk;
backup database format '/backup/db_%U';
backup current controlfile format '/backup/ct_%U';
sql "alter system archive log current";
backup archivelog all delete input format '/backup/ar_%U';
release channel c1;
release channel c2;
release channel c3;
crosscheck backup;
delete noprompt obsolete;
}

每日归档日志备份:
run{
allocate channel c1 type disk;
allocate channel c2 type disk;
allocate channel c3 type disk;
backup current controlfile format '/backup/ct_%U';
sql "alter system archive log current";
backup archivelog all delete input format '/backup/ar_%U';
release channel c1;
release channel c2;
release channel c3;
crosscheck backup;
delete noprompt obsolete;
}

使用道具 举报

回复
论坛徽章:
116
现任管理团队成员
日期:2011-05-07 01:45:08娜美
日期:2017-08-29 10:15:28
发表于 2017-7-17 13:15 | 显示全部楼层
备份元数据在contrfile中的空间是reuseable空间,这部分空间是否被覆盖又实例参数CONTROL_FILE_RECORD_KEEP_TIME来实现,如果控制文件空间不足,扩大controlfile还是重用reusable空间(覆盖元数据)是通过这个参数判断的,如果你设置的这个参数很小,元数据就有可能被覆盖丢失~

使用道具 举报

回复
论坛徽章:
0
 楼主| 发表于 2017-7-17 14:07 | 显示全部楼层
当一个新的reusable record需要写入控制文件时,如果发现空间不足,会去看是否有早于CONTROL_FILE_RECORD_KEEP_TIME这个参数值以前的记录,若有,则覆盖之,若没有,则扩展控制文件,以便容纳下新的记录。如果不能扩展,则会报错。

我现在CONTROL_FILE_RECORD_KEEP_TIME=30,也就是起码能保存30天的记录吧;
控制文件大小现在是58M,说不能扩展会报错,我也没发现相关报错。

我完成一个全备后,当天就恢复备份出来控制文件,然后做的RESTORE和RECOVER,结果连续2周的备份恢复测试都是同样的问题,不知道问题到底出在哪里?

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则

SACC2017购票8.8折优惠进行时

2017中国系统架构师大会(SACC2017)将于10月19-21日在北京新云南皇冠假日酒店震撼来袭。今年,大会以“云智未来”为主题,云集国内外顶级专家,围绕云计算、人工智能、大数据、移动互联网、产业应用等热点领域展开技术探讨与交流。本届大会共设置2大主会场,18个技术专场;邀请来自互联网、金融、制造业、电商等多个领域,100余位技术专家及行业领袖来分享他们的经验;并将吸引4000+人次的系统运维、架构师及IT决策人士参会,为他们提供最具价值的交流平台。
----------------------------------------
优惠时间:2017年8月30日前

活动链接>>
TOP技术积分榜 社区积分榜 徽章 电子杂志 团队 统计 虎吧 老博客 知识索引树 读书频道 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档 | IT博客
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛 | SAP ERP系统
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 网站律师 隐私政策 知识产权声明
京ICP备16024965号 北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表