Fosdccf.blog.chinaunix.net
sdccf
全部博文(19283)
Linux酷软(214)
tmp(0)
PostgreSQL(93)
Solaris(383)
AIX(173)
SCOUNIX(575)
DB2(1005)
Shell(386)
C/C++(1187)
MySQL(1750)
Sybase(465)
Oracle(3695)
Informix(548)
HP-UX(0)
IBM AIX(2)
Sun Solaris(0)
BSD(1)
Linux(8597)
SCO UNIX(23)
2011年(1)
2009年(125)
2008年(19094)
2007年(63)
clifford
linky521
曾德标
fengzhan
leon_yu
mcuflowe
yt200902
guanyuji
GY123456
snow888
carlos94
丸喵喵
sean229
cxunix
可怜的猪
cqxc413
xzzgege
wb123456
分类: Oracle
2008-04-30 15:44:19
Case:一个老同学单位数据库坏了,里面有重要数据。Oracle trouble:OS所在DISK崩溃。Oracle version:Version 9.2.0.1.0enterpriseOS:win:DB SID: ora9Backup state: norecent data backupmachine: IBM pcs 安腾core4 3GmOS故障可以说所有Oracle故障中,最简单的一种故障,数据基本是100%完好,做物理copy即可,不需要人工干预recover。9i和10g略有不同,9i在安装客户端的机器上得创建实例,10g在选安装数据库软件后,就可用于恢复。恢复所需文件1. control file2. online log file3. datafile4. spfile5. admin目录下所有内容(非必要,推荐)步骤1:准备恢复所需文件。该case的controlfile,logfile,datafile都在E:\oracle\oradata\ora9\ 下面,备份ora9目录。在e:\oracle\ora92\database 下 备份 spfileora9.ora备份e:\oracle\admin步骤2:在新的机器安装oracle,略。(这里记录一个问题,创建实例在46%时,卡了半个小时,我发现是我迫不及待的打开了SQLPLUS登录到SYS,关掉后,进程才得以继续,没有深究)版本要一致,否则一开始就会校验失败。切记,安装位置一致能省去很多麻烦,ORACLE_BASE= e:\oracle 步骤3:安装完毕测试数据库。Sqlplus “/as sysdba”Select name form v$database;Ora9--关闭Shutdownimmediate步骤4:拷贝文件Copy 备份的ora9目录到,新装oracle的相同目录(E:\oracle\oradata\),覆盖前最好将原有ora9目录,改名为ora9bak。Copy 备份的spfile 到e:\oracle\ora92\database,覆盖前最好将原有spfileora9.ora改名为spfileora9.ora.bak做备份。拷贝admin 到相同目录,最好对原admin备份,同上。步骤5:启动Sqlplus “/as sysdba”--依次执行StartupnomountStartupmountAlter databaseopen--troubleshooting中途可能会报ORA-01990: error openingpassword file 这时将D:\oracle\ora92\database\PWDora9.ORA改为D:\oracle\ora92\database\PWDora9.ORA.bak另外打开一个cmd,执行下面这个语句Orapwdfile=D:\oracle\ora92\database\PWDora9.ORA password=oracle检查新D:\oracle\ora92\database\PWDora9.ORA是否生成成功后,继续刚才失败的步骤。在Alter database open 成功后,即完成恢复。另外由于数据安装位置的不一致会带来诸多文件问题,这个时候需要改pfile,甚至重建控制文件,较为繁琐。这里不作讨论。最后,用原有用户测试Conn ****/****Make a check-up..记住经常做数据备份。如果下次损坏的是数据,就很难恢复了。Wangwj/scttscValenwon/cnoug2008-01-31
原文:http://valen.blog.ccidnet.com/blog-htm-itemid-245331-do-showone-type-blog-uid-51502.html
上一篇:如何用组来保证"Oracle"数据库的安全
下一篇:Oracle数据库对象简介
登录 注册