跟以前的配置一样重新安装oracle,oracle的版本也要和以前的一样,实例名也要一样。
安装完成后,把这两个文件夹覆盖过去,覆盖前先停止数据库服务

解决方案 »

  1.   

    這個不懂。這應該只有DBA才用得到吧﹐跟著學習學習。做一個DBA是我追求的目標。
      

  2.   

    yfjyz:
       不好使啊,我把新数据库的两文件夹备出来,把旧的考进去,服务到是能起,操作出错,提示
    数据库没有打开...,
    我再把新备出的文件考回去,也这个提示啊!
      

  3.   

    先启动服务,然后手动启动数据库:
    c:> sqlplus /nolog
    sql>connect / as sysdba
    sql>startup force
      

  4.   

    非归档模式下的备份与恢复
      备份方案:采用OS冷备份
      1.连接数据库并创建测试表
      SQL*Plus: Release 8.1.6.0.0 - Production on Tue May 6 13:46:32 2003
      (c) Copyright 1999 Oracle Corporation.  All rights reserved.
      SQL> connect internal/password as sysdba;
      Connected.
      SQL> create table test(a int);
      Table created
      SQL> insert into test values(1);
      1 row inserted
      SQL> commit;
      Commit complete
      
      2.备份数据库
      SQL> @coldbak.sql 或在DOS下 svrmgrl @coldbak.sql
      
      3.再插入记录
      SQL> insert into test values(2);
      1 row inserted
      SQL> commit;
      Commit complete
      SQL> select * from test;
                               A
      ---------------------------------------
                               1
                               2
      4.关闭数据库
      SQL> shutdown immediate;
      Database closed.
      Database dismounted.
      ORACLE instance shut down.
      
      5.毁坏一个或多个数据文件,如删除user01.dbf
      C:\>del D:\ORACLE\ORADATA\TEST\USERS01.DBF
      模拟媒体毁坏
      
      6.重新启动数据库,会发现如下错误
      SQL> startup
      ORACLE instance started.
      
      Total System Global Area  102020364 bytes
      Fixed Size                    70924 bytes
      Variable Size              85487616 bytes
      Database Buffers           16384000 bytes
      Redo Buffers                  77824 bytes
      Database mounted.
      ORA-01157: cannot identify/lock data file 3 - see DBWR trace file
      ORA-01110: data file 3: 'D:\ORACLE\ORADATA\TEST\USERS01.DBF'
      
      在报警文件中,会有更详细的信息
      Errors in file D:\Oracle\admin\test\bdump\testDBW0.TRC:
      ORA-01157: cannot identify/lock data file 3 - see DBWR trace file
      ORA-01110: data file 3: 'D:\ORACLE\ORADATA\TEST\USERS01.DBF'
      ORA-27041: unable to open file
      OSD-04002: unable to open file
      O/S-Error: (OS 2) 系统找不到指定的文件。
      
      7.拷贝备份复原到原来位置(restore过程)
      C:\>xcopy d:\database\*.* d:\oracle\oradata\test/H/R/S
      
      8.打开数据库,检查数据
      SQL> alter database open;
      Database altered.
      SQL> select * from test;
                               A
      ---------------------------------------
                               1
      
      这里可以发现,数据库恢复成功,但在备份之后与崩溃之前的数据丢失了。
      说明:
      1、非归档模式下的恢复方案可选性很小,一般情况下只能有一种恢复方式,就是数据库的冷备份的完全恢复,仅仅需要拷贝原来的备份就可以(restore),不需要recover。
      2、这种情况下的恢复,可以完全恢复到备份的点上,但是可能是丢失数据的,在备份之后与崩溃之前的数据将全部丢失。
      3、不管毁坏了多少数据文件或是联机日志或是控制文件,都可以通过这个办法恢复,因为这个恢复过程是Restore所有的冷备份文件,而这个备份点上的所有文件是一致的,与最新的数据库没有关系,就好比把数据库又放到了一个以前的“点”上。
      4、对于非归档模式下,最好的办法就是采用OS的冷备份,建议不要用RMAN来作冷备份,效果不好,因为RMAN不备份联机日志,restore不能根本解决问题。
      5、如果没有备份联机日志,如RMAN的备份,就需要利用不完全恢复(until cancel)的方法来重新创建联机日志文件