登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

飞哥的技术博客

世上无难事,只怕有心人!

 
 
 

日志

 
 
 
 

linux下oracle热备份脚本  

2009-06-28 21:57:28|  分类: Oracle |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
不去追随别人,也不去张扬自己!

linux下oracle热备份脚本

环境: redhat 5     10.2.0.1 

备份脚本:open_backup.sql     所在目录:/u01/open_backup

脚本内容:



set feedback off pagesize 0 heading off verify off linesize 100 trimspool on
define dir='/u01/open_backup'
define fil='/u01/open_backup/open_backup_commands.sql'
define spo='&dir/open_backup_output.lst'
prompt *** Spooling to &fil
set serveroutput on
spool &fil
prompt spool &spo
prompt archive log list;;
prompt alter system switch logfile;;
DECLARE
  CURSOR cur_tablespace IS
    SELECT tablespace_name FROM dba_tablespaces WHERE status <> 'READ ONLY';
  CURSOR cur_datafile (tn VARCHAR) IS
    SELECT file_name
      FROM dba_data_files
  WHERE tablespace_name=tn;
  BEGIN
    FOR ct IN cur_tablespace LOOP
      dbms_output.put_line('alter tablespace '||ct.tablespace_name ||' begin backup;');
      FOR cd IN cur_datafile(ct.tablespace_name) LOOP
         dbms_output.put_line('host cp '||cd.file_name ||' &dir');
      END LOOP;
      dbms_output.put_line('alter tablespace '||ct.tablespace_name||' end backup;');
    END LOOP;
  END;
/
prompt alter system switch logfile;;
prompt alter backup controlfile to '&dir/backup.ctl' REUSE;;
prompt archive log list;;
prompt spool off;;
spool off;
@&fil



经过测试,可以成功运行.

数据库运行状态备份数据,运行sqlplus>@/u01/open_backup.sql 即可


如果需要备份参数文件的话:
如:
SQL> create pfile='/u01/open_backup/initorcl.ora' from spfile='/u01/app/oracle/product/10.2.0/db_1/dbs/spfileorcl.ora';





创建归档文件脚本:archive_backup.sql
目录:/u01/open_backup/archive/目录下:

内容:
define dir='/u01/open_backup/archive'
define fil='/u01/open_backup/archive/archive_backup_commands.sql'
spool &fil
prompt archive log next;;
select 'host mv '||name ||' &dir'
from v$archived_log
where completion_time>=trunc(sysdate)-1
 and completion_time<trunc(sysdate);
 spool off;
@&fil


在数据库open下执行
SQL>@/u01/open_backup/archive/archive_backup.sql

即可

把昨天的归档的所有日志移动到/u01/open_backup/archive/目录下


引文来源  linux下oracle热备份脚本 - 蒙昭良的个人空间 - ITPUB个人空间 - powered by X-Space
  评论这张
 
阅读(409)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018