我所使用的双机热备是使用的软件控制的,一个服务器当了,另外一个服务器就立马接管,不过这两个服务器是使用的同一个磁盘阵列柜,ORACLE的数据文件都是在共用的磁盘阵列柜上的。买个双机热备软件别人自然会教会你使用的。

解决方案 »

  1.   

    你在建立DB的时候应该就考虑到这个问题的,怎么现在才想到呢?
    你先将你所有的数据库文件COPY到别处一个盘,然后再修改一下主服的启支文件,如INIT.ORA等文件,让系统能找到你的第二个机子。然后将主服设定在BACKUP状态就行了
      

  2.   

    这是我引用的一个网友的作品,也许你会受到启发:
    给你一个热备份的脚本,热备份最大的好处就是可以进行数据的完全或非完全恢复,如0点备份,23点崩溃,数据库可以恢复到23点,也可以选择性的恢复到12点。关于恢复的资料,最好自己看书,很多。  
    rem          script:hotbak.sql  
    rem          creater:chenjiping  
    rem          date:4.4.2002  
    rem          desc:backup  database  datafile  in  archive  
     
    --connect  database  
    connect  internal/virpure;  
     
    --archive  
    alter  system  checkpoint;  
    alter  system  archive  log  all;  
    alter  system  switch  logfile;  
    --start  
    alter  tablespace  afis_remote  begin  backup;  
    !xcopy  e:\orant\database\remote_data1.ora  e:\databak/H/R;  
    !xcopy  e:\orant\database\remote_data2.ora  e:\databak/H/R;    
    alter  tablespace  afis_remote  end  backup;  
     
    alter  tablespace  afis_rmtafis  begin  backup;  
    !xcopy  e:\orant\database\rmtafis_data1.ora  e:\databak/H/R;  
    !xcopy  e:\orant\database\rmtafis_data2.ora  e:\databak/H/R;    
    alter  tablespace  afis_rmtafis  end  backup;  
     
    alter  tablespace  afis_lquser  begin  backup;  
    !xcopy  e:\orant\database\lquser_data.ora  e:\databak/H/R;  
    alter  tablespace  afis_lquser  end  backup;  
     
    alter  tablespace  afis_transf  begin  backup;  
    !xcopy  e:\orant\database\transf1_data.ora  e:\databak/H/R;  
    !xcopy  e:\orant\database\transf2_data.ora  e:\databak/H/R;    
    alter  tablespace  afis_transf  end  backup;  
     
    alter  tablespace  system  begin  backup;  
    !xcopy  e:\orant\database\sys1afis.ora  e:\databak/H/R;  
    alter  tablespace  system  end  backup;  
     
    alter  tablespace  rbs  begin  backup;  
    !xcopy  e:\orant\database\rbs1afis.ora  e:\databak/H/R;  
    alter  tablespace  rbs  end  backup;  
     
    alter  tablespace  usr  begin  backup;  
    !xcopy  e:\orant\database\usr1afis.ora  e:\databak/H/R;  
    alter  tablespace  usr  end  backup;  
     
     
    alter  tablespace  temporary  begin  backup;  
    !xcopy  e:\orant\database\tmp1afis.ora  e:\databak/H/R;  
    alter  tablespace  temporary  end  backup;  
    --end  
     
    --bak  control  file  
    --bin  
    alter  database  backup  controlfile  to  'e:\databak\controlbinbak.000';  
    --ascii  
    alter  database  backup  controlfile  to  trace;  
     
    alter  system  switch  logfile;  
    alter  system  switch  logfile;  
    以下是调用以上脚本的bat,照样可以加到任务计划中,一般热备份每周备份一次就够了,主要看情况不同而定。  
    rem          script:hotbak.bat  
    rem          creater:chenjiping  
    rem          date:4.4.2002  
    rem          desc:backup  database  datafile  in  archive  
     
    echo  del  old  temp  backup  file  
    del    f:\datatmp\*.*/q  
    del    e:\datatmp\*.*/q  
    echo  bak  backup  file  to  temp  
    move  e:\databak\*.*  e:\datatmp\  
    move  f:\Archive\*.*  f:\datatmp\  
    echo  start  new  bak  to  e:\databak  
    svrmgrl  @e:\sql\hotbak.sql  
     
    ---------------------------------------------------------------  
     
    1.在d:盘中建立备份文件夹,如:d:\数据库备份;再建立5个(最多7个)子目录,如d:\数据库备份\星期一,d:\数据库备份\星期二,......,如此可保证每周的备份;  
    2.在d:\数据库备份目录下建立5个批处理文件,如:星期一.bat(可为7个);  
    3.编辑星期一.bat,写入:  
    exp  system/manager  owner=(test1)  file=d:\数据库备份\星期一\test1.dmp  
    log=d:\数据库备份\星期一\test1.log  buffer=655000;  
    (注意有几个库写几个)  
     
    4.将批理文件加入“控制面板”、“任务计划”、“备份”、“每天”,时间可为凌晨1-3点,OK!  
      

  3.   

    你可以通过:[email protected]
    找人帮忙