楼主: westbird

[精华] 求救----急!!旧数据文件,旧控制文件,新日志,怎样恢复?

[复制链接]
论坛徽章:
4
ITPUB元老
日期:2005-02-28 12:57:00授权会员
日期:2005-10-30 17:05:33会员2006贡献徽章
日期:2006-04-17 13:46:34ITPUB技术丛书作者
日期:2010-09-26 15:24:56
81#
发表于 2002-11-20 19:56 | 只看该作者
to  westbird
现在闲了,呵呵,参考这个吧,呵呵,有问题再说
http://www.cnoug.org/bin/ut/topi ... mp;bpg=1&age=30


to biti:
我的啥风格呀,呵呵,我咋还没看出来已经有风格了??

使用道具 举报

回复
论坛徽章:
1
授权会员
日期:2005-10-30 17:05:33
82#
 楼主| 发表于 2002-11-20 20:20 | 只看该作者
to 月儿:
很好的文章,我只有以后去试了。谢谢你!

使用道具 举报

回复
论坛徽章:
4
ITPUB元老
日期:2005-02-28 12:57:00授权会员
日期:2005-10-30 17:05:33会员2006贡献徽章
日期:2006-04-17 13:46:34ITPUB技术丛书作者
日期:2010-09-26 15:24:56
83#
发表于 2002-11-20 20:26 | 只看该作者
最初由 westbird 发布
[B]to 月儿:
很好的文章,我只有以后去试了。谢谢你! [/B]


试验的时候参考我在AIX 5.1上的试验就可以了,呵呵,有问题再讨论

使用道具 举报

回复
论坛徽章:
314
行业板块每日发贴之星
日期:2012-07-12 18:47:29双黄蛋
日期:2011-08-12 17:31:04咸鸭蛋
日期:2011-08-18 15:13:51迷宫蛋
日期:2011-08-18 16:58:25紫蛋头
日期:2011-08-31 10:57:28ITPUB十周年纪念徽章
日期:2011-09-27 16:30:47蜘蛛蛋
日期:2011-10-20 15:51:25迷宫蛋
日期:2011-10-29 11:12:59ITPUB十周年纪念徽章
日期:2011-11-01 16:19:41鲜花蛋
日期:2011-11-09 20:33:30
84#
发表于 2002-11-22 19:40 | 只看该作者
to  westbird
我的测试环境:WIN2000 SERVER 9IR2,
冷备份数据库,之后打开数据库,在上面作了一些动作。然后正常关闭。
你可以看图篇,这是我把备份的数据文件COPY回去,覆盖原来的数据文件
从图中,你还可以看到我的归档日志到了77号!
拷贝完后启动数据库:MOUNT。
之后,RECOVER DATABASE USING BACKUP CONTROLFILE
最后系统提示要78,应该是在线日志,我没给,CANCEK掉
此时可以OPNE RESETLOGS。


ORA-00279: change 11554689 generated at 11/22/2002 18:12:17 needed for thread 1
ORA-00289: suggestion : D:\ORACLE\ORADATA\ORACLE9I\ARC00076.001
ORA-00280: change 11554689 for thread 1 is in sequence #76
ORA-00278: log file 'D:\ORACLE\ORADATA\ORACLE9I\ARC00075.001' no longer needed
for this recovery


ORA-00279: change 11557605 generated at 11/22/2002 18:29:44 needed for thread 1
ORA-00289: suggestion : D:\ORACLE\ORADATA\ORACLE9I\ARC00077.001
ORA-00280: change 11557605 for thread 1 is in sequence #77
ORA-00278: log file 'D:\ORACLE\ORADATA\ORACLE9I\ARC00076.001' no longer needed
for this recovery


ORA-00279: change 11560514 generated at 11/22/2002 18:46:40 needed for thread 1
ORA-00289: suggestion : D:\ORACLE\ORADATA\ORACLE9I\ARC00078.001
ORA-00280: change 11560514 for thread 1 is in sequence #78
ORA-00278: log file 'D:\ORACLE\ORADATA\ORACLE9I\ARC00077.001' no longer needed
for this recovery


ORA-00308: cannot open archived log 'D:\ORACLE\ORADATA\ORACLE9I\ARC00078.001'
ORA-27041: unable to open file
OSD-04002: unable to open file
O/S-Error: (OS 2) O5M3UR2;5=V86(5DND<~!#


SQL> alter database open resetlogs;
alter database open resetlogs
*
ERROR at line 1:
ORA-01113: file 1 needs media recovery
ORA-01110: data file 1: 'D:\ORACLE\ORADATA\ORACLE9I\SYSTEM01.DBF'


SQL> recover database using backup controlfile until cancel;
ORA-00279: change 11560514 generated at 11/22/2002 18:46:40 needed for thread 1
ORA-00289: suggestion : D:\ORACLE\ORADATA\ORACLE9I\ARC00078.001
ORA-00280: change 11560514 for thread 1 is in sequence #78


Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
cancel;
ORA-00308: cannot open archived log 'cancel;'
ORA-27041: unable to open file
OSD-04002: unable to open file
O/S-Error: (OS 2) O5M3UR2;5=V86(5DND<~!#


Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
cancel
Media recovery cancelled.
SQL> alter database open resetlogs;

Database altered.

SQL> connect scott/tiger2oracle9i
ERROR:
ORA-12560: TNSrotocol adapter error


Warning: You are no longer connected to ORACLE.
SQL> connect scott/tiger@oracle9i
Connected.
SQL> sleect * from tab;
SP2-0734: unknown command beginning "sleect * f..." - rest of line ignored.
SQL> select * from tab;

TNAME                          TABTYPE         CLUSTERID
------------------------------ -------------- ----------
BILLING_TYPE                   TABLE

使用道具 举报

回复
论坛徽章:
1
授权会员
日期:2005-10-30 17:05:33
85#
 楼主| 发表于 2002-11-22 19:51 | 只看该作者
to ZALBB:
看来我的问题应能恢复,只是我现在缺少实验环境,我的坏硬件还没到货,以后一定实验一下,谢谢你!

使用道具 举报

回复
论坛徽章:
13
ITPUB元老
日期:2005-06-28 13:48:45蛋疼蛋
日期:2011-08-07 22:06:092010广州亚运会纪念徽章:武术
日期:2010-10-02 13:25:112010年世界杯参赛球队:加纳
日期:2010-03-03 22:00:34生肖徽章2007版:鸡
日期:2009-12-05 13:55:07生肖徽章2007版:狗
日期:2009-03-21 05:52:34生肖徽章2007版:猴
日期:2008-12-05 05:17:06奥运会纪念徽章:击剑
日期:2008-08-28 19:03:31奥运会纪念徽章:举重
日期:2008-08-28 12:53:00ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44
86#
发表于 2002-12-10 18:23 | 只看该作者
archivelog 模式:以前辈分了全部数据库(辈分前 alter system switch logfile;),
现在我把旧的datafile替换掉了现在的datafile,删除所有controlfile,  我恢复过程如下:(有点过程不是很明白)
============================


SVRMGR> alter system switch logfile;
Statement processed.
SVRMGR> shutdown immediate;
SVRMGR> startup nomount;
SVRMGR> CREATE CONTROLFILE REUSE DATABASE "RLZY" NORESETLOGS ARCHIVELOG
       2>   MAXLOGFILES 32
         3> MAXLOGMEMBERS 2
      4>    MAXDATAFILES 254
        5>  MAXINSTANCES 1
     6>     MAXLOGHISTORY 226
L     7> OGFILE
       8> GROUP 1 '/usr/local/oracle/oradata/rlzy/redo01.log'  SIZE 2M,
  G     9> ROUP 2 '/usr/local/oracle/oradata/rlzy/redo02.log'  SIZE 2M,
      10> GROUP 3 '/usr/local/oracle/oradata/rlzy/redo03.log'  SIZE 2M
D    11> ATAFILE
  '    12> /usr/local/oracle/oradata/rlzy/system01.dbf',
  '    13> /usr/local/oracle/oradata/rlzy/rbs01.dbf',
  '    14> /usr/local/oracle/oradata/rlzy/users01.dbf',
  '    15> /usr/local/oracle/oradata/rlzy/temp01.dbf',
    16>   '/usr/local/oracle/oradata/rlzy/tools01.dbf',
    17>   '/usr/local/oracle/oradata/rlzy/indx01.dbf',
  '    18> /usr/local/oracle/oradata/rlzy/TEST.dbf',
    19>   '/usr/local/oracle/oradata/rlzy/SP.dbf'
CH    20> ARACTER SET ZHS16GBK
;    21>
Statement processed.
SVRMGR> shutdown
ORA-01109: database not open
Database dismounted.
ORACLE instance shut down.
SVRMGR> recover using backup controlfile until cancel;
ORA-01034: ORACLE not available
SVRMGR> startup mount;
ORACLE instance started.
Total System Global Area                        232947872 bytes
Fixed Size                                          73888 bytes
Variable Size                                   215924736 bytes
Database Buffers                                 16777216 bytes
Redo Buffers                                       172032 bytes
Database mounted.
SVRMGR> recover using backup controlfile until cancel;
ORA-00279: change 312085 generated at 12/10/2002 16:29:38 needed for thread 1
ORA-00289: suggestion : /usr/local/oracle/admin/rlzy/arch/arch_1_259.arc
ORA-00280: change 312085 for thread 1 is in sequence #259
Log applied.
ORA-00279: change 312248 generated at 12/10/2002 16:37:39 needed for thread 1
ORA-00289: suggestion : /usr/local/oracle/admin/rlzy/arch/arch_1_260.arc
ORA-00280: change 312248 for thread 1 is in sequence #260
ORA-00278: log file '/usr/local/oracle/admin/rlzy/arch/arch_1_259.arc' no longer
needed for this recovery
ORA-00308: cannot open archived log '/usr/local/oracle/admin/rlzy/arch/arch_1_26
0.arc'
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory
Additional information: 3
SVRMGR> alter database open resetlogs;
Statement processed.
===============================
=========================================
为什么出来下面错误呢,而我打开数据库后数据已经都恢复了呀,难道这恢复还有什么隐藏问题?这问题是不是正常呢??
ORA-00279: change 312248 generated at 12/10/2002 16:37:39 needed for thread 1
ORA-00289: suggestion : /usr/local/oracle/admin/rlzy/arch/arch_1_260.arc
ORA-00280: change 312248 for thread 1 is in sequence #260
ORA-00278: log file '/usr/local/oracle/admin/rlzy/arch/arch_1_259.arc' no longer
needed for this recovery
ORA-00308: cannot open archived log '/usr/local/oracle/admin/rlzy/arch/arch_1_26
0.arc'
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory
Additional information: 3
===================

使用道具 举报

回复
论坛徽章:
4
ITPUB元老
日期:2005-02-28 12:57:00授权会员
日期:2005-10-30 17:05:33会员2006贡献徽章
日期:2006-04-17 13:46:34ITPUB技术丛书作者
日期:2010-09-26 15:24:56
87#
发表于 2002-12-10 20:41 | 只看该作者
你当时备份后不是switch log了么?那时的archive 号是多少?
请仔细看前面的讲解,从备份集开始的archive 和你要恢复的时间点之间的archive才是有用的,所以,恢复到那个archive就可以cancel,还有什么可担心的,呵呵

使用道具 举报

回复
论坛徽章:
1
授权会员
日期:2005-10-30 17:05:33
88#
发表于 2002-12-23 00:19 | 只看该作者
不错!学了不少。
westbird:搞定了跟大家说一声啊。

使用道具 举报

回复
论坛徽章:
1
授权会员
日期:2005-10-30 17:05:33
89#
 楼主| 发表于 2002-12-27 14:55 | 只看该作者

成功恢复------谢谢各位!!!!

特别感谢月儿和大家的共产主义式的无私帮助!!!!

这件事时间过了很长,但由于硬件到货关系(这其中牵扯的问题不是我们技术人员所能左右的),现在我才在生产机上来做。其过程用了不到半小时!这与前面的讨论分不开(大家的智慧让我少走了弯路:))。我也真正感受到了oracle数据库的强大恢复能力和大家无私帮助的热情!

其恢复过程如下,谁如有不明白的地方可以问我。

丢失所有数据文件,控制文件,redo日志文件

成功恢复过程:
1. 拷贝旧冷备数据文件
rcp -r 冷备 数据目录
2. mount数据库
Oracle_home>bin/svrmgrl
SVRMGR> connect internal
SVRMGR> startup mount
3. 用using backup controlfile进行恢复
SVRMGR> recover database until cancel using backup controlfile;
出现输入提示时输入AUTO
4. 用Open Resetlog 打开数据库
SVRMGR> alter database open RESETLOGS;
5. 恢复结束,看一下目前日志状态
SVRMGR> archive log list;
应出现:
Oldest online log sequence 0
Next log sequence to archive 1
Current log sequence 1

使用道具 举报

回复
论坛徽章:
2
授权会员
日期:2005-10-30 17:05:33ITPUB元老
日期:2006-11-12 20:16:58
90#
发表于 2002-12-27 17:09 | 只看该作者

我的看法

下面几点是否正确请各位指正
   1.   有数据文件、控制文件及archivelog的全备份,当前的redolog文件可用,
     这种情况可完全恢复
  2. 有数据文件及archivelog的全备份,当前的redolog文件可用,用重新生成
     控制文件的方法,这种情况可完全恢复
  3.  有数据文件、控制文件及archivelog的全备份,当前的redolog文件不可用,
     这种情况只能恢复到可用的archivelog
    4. 有数据文件及archivelog的全备份,当前的redolog文件不可用,用重新生成
     控制文件的方法,这种情况只能恢复到可用的archivelog

使用道具 举报

回复

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

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表