创建shell脚本做备份维护较好!

解决方案 »

  1.   

    看你的操作系统,如果是unix等,写shell
    window计划任务
      

  2.   

    windows,计划任务具体怎么做?
    是不是进去以后选取oracle的备份程序?9i中具体是哪个?
      

  3.   

    用oracle的工具RMAN最好,恢复的时候很少出问题。
      

  4.   

    我在9i下试过
    1:建立一个批处理文件:hotback.bat
    sqlplus -s system/manager@test @c:\hotback.sql >> c:\hot.log
    sqlplus -s system/manager@test @c:\hot_back.sql >> c:\hot2.log
    exit2:hotback.sql文件信息:
    define HOT_BACK_DIR = H:\backup
    define INT_PWD = manager
    define BACK_DATE = to_char(sysdate,'ddmmyy')set heading off
    prompt backup on 
    select 'prompt' || to_char(sysdate,'dd/mm/yyyy') from dual;/* Create Temporary Table with Tablespace Data */
    drop table dsc_hot_stage;
    create table dsc_hot_stage
    (
    tablespace_name varchar2(30),
    file_name varchar2(200)
    );insert into dsc_hot_stage 
    select rtrim(tablespace_name),rtrim(file_name) from sys.dba_data_files;set feedback off
    set heading off
    set pagesize 0
    set linesize 85
    set verify off
    set termout off
    set echo off
    break on c2 on c1spool D:\tenjak_back.sqlselect 'prompt ' || to_char(sysdate,'dd/mm/yyyy hh24:mi:ss') from dual;select 'connect system/&INT_PWD'||'@tenjak as sysdba' from dual;
    -- Create Script to backup actual files to a directory
    select 'prompt ' || tablespace_name|| ' begin backup' c1,
    'alter tablespace '|| tablespace_name||' begin backup;' c2,
    'host ocopy '||file_name||' &HOT_BACK_DIR' || '\' ||
    substr(file_name,instr(rtrim(file_name),'\',-1,1)+1,length(rtrim(file_name))) c3
    from dsc_hot_stage
    union 
    select 
    'prompt ' || tablespace_name || ' end backup' c1,
    'alter tablespace '|| tablespace_name||' end backup;' c2,
    null c3 
    from dsc_hot_stage
    group by tablespace_name,file_name order by c2,c1;
    -- Create Script to backup Control File to Destination
    select 'alter database backup controlfile to ''&HOT_BACK_DIR' || '\' ||
    'control.' || &back_date || ''' ;' from dual;
    -- Create standby DB control 
    select 'Alter database create standby controlfile as ''&HOT_BACK_DIR' || '\' ||
    'stby_control.' || &back_date || ''' ;' from dual;
    -- Create Script to backup Control File to Trace
    select 'alter database backup controlfile to trace; ' 
    from dual;
    select 'alter system switch logfile;' from dual;
    select 'alter system switch logfile;' from dual;
    select 'exit' from dual;spool off exit
      

  5.   

    3:由2生成hot_back.sql,以下为内容样本,具体应由2生成。
    prompt 17/11/2003 11:28:41                                                           
    connect system/manager@tenjak as sysdba                                              
    prompt CWMLITE begin backup                                                          
    alter tablespace CWMLITE begin backup;                                               
    host ocopy D:\ORACLE\ORADATA\TENJAK\CWMLITE01.DBF H:\backup\CWMLITE01.DBF            
                                                                                         
    prompt CWMLITE end backup                                                            
    alter tablespace CWMLITE end backup;                                                 
                                                                                         
                                                                                         
    prompt DRSYS begin backup                                                            
    alter tablespace DRSYS begin backup;                                                 
    host ocopy D:\ORACLE\ORADATA\TENJAK\DRSYS01.DBF H:\backup\DRSYS01.DBF                
                                                                                         
    prompt DRSYS end backup                                                              
    alter tablespace DRSYS end backup;                                                   
                                                                                         
                                                                                         
    prompt EXAMPLE begin backup                                                          
    alter tablespace EXAMPLE begin backup;                                               
    host ocopy D:\ORACLE\ORADATA\TENJAK\EXAMPLE01.DBF H:\backup\EXAMPLE01.DBF            
                                                                                         
    prompt EXAMPLE end backup                                                            
    alter tablespace EXAMPLE end backup;                                                 
                                                                                         
                                                                                         
    prompt INDX begin backup                                                             
    alter tablespace INDX begin backup;                                                  
    host ocopy D:\ORACLE\ORADATA\TENJAK\INDX01.DBF H:\backup\INDX01.DBF                  
                                                                                         
    prompt INDX end backup                                                               
    alter tablespace INDX end backup;                                                    
                                                                                         
                                                                                         
    prompt OEM_REPOSITORY begin backup                                                   
    alter tablespace OEM_REPOSITORY begin backup;                                        
    host ocopy D:\ORACLE\ORADATA\TENJAK\OEM_REPOSITORY.DBF H:\backup\OEM_REPOSITORY.DBF  
                                                                                         
    prompt OEM_REPOSITORY end backup                                                     
    alter tablespace OEM_REPOSITORY end backup;                                          
                                                                                         
                                                                                         
    prompt SYSTEM begin backup                                                           
    alter tablespace SYSTEM begin backup;                                                
    host ocopy D:\ORACLE\ORADATA\TENJAK\SYSTEM01.DBF H:\backup\SYSTEM01.DBF              
                                                                                         
    prompt SYSTEM end backup                                                             
    alter tablespace SYSTEM end backup;                                                  
                                                                                         
                                                                                         
    prompt TOOLS begin backup                                                            
    alter tablespace TOOLS begin backup;                                                 
    host ocopy D:\ORACLE\ORADATA\TENJAK\TOOLS01.DBF H:\backup\TOOLS01.DBF                
                                                                                         
    prompt TOOLS end backup                                                              
    alter tablespace TOOLS end backup;                                                   
                                                                                         
                                                                                         
    prompt UNDOTBS begin backup                                                          
    alter tablespace UNDOTBS begin backup;                                               
    host ocopy D:\ORACLE\ORADATA\TENJAK\UNDOTBS01.DBF H:\backup\UNDOTBS01.DBF            
                                                                                         
    prompt UNDOTBS end backup                                                            
    alter tablespace UNDOTBS end backup;                                                 
                                                                                         
                                                                                         
    prompt USERS begin backup                                                            
    alter tablespace USERS begin backup;                                                 
    host ocopy D:\ORACLE\ORADATA\TENJAK\USERS01.DBF H:\backup\USERS01.DBF                
                                                                                         
    prompt USERS end backup                                                              
    alter tablespace USERS end backup;                                                   
                                                                                         
                                                                                         
    alter database backup controlfile to 'H:\backup\control.171103' ;                    
    Alter database create standby controlfile as 'H:\backup\stby_control.171103' ;       
    alter database backup controlfile to trace;                                          
    alter system switch logfile;                                                         
    alter system switch logfile;                                                         
    exit
      

  6.   

    不过我对这句不太理解
    select 'alter system switch logfile;' from dual;
    select 'alter system switch logfile;' from dual;
    为什么要两句,是不是打错了
    是不是该改为
    select 'alter system archive log all;'from dual;
    select 'alter system switch logfile;' from dual;
    请高手指点啊
    以上参考链接 http://www.syerp.com/oracle/20010903.php
      

  7.   

    http://211.99.196.144:8090/forum1/frontshow/dispbbs.jsp?boardid=109&id=4545
      

  8.   

    建议使用oms的自带功能自动完成。