| 
                         总觉得使用windows跑oracle是不靠谱的事情,可以这个世界上总有很多人喜欢做类似这样的事情,对于数据库比较常见的两件事情:rman和删除dg备库归档日志,在linux/unix平台上使用shell实现很简单,可是跑到win里面,就变的烦了,不是因为其麻烦,而是因为用的人少,不知道怎么下手处理该事情,我编写了简单的实现初级功能的win下面rman备份和删除备库归档日志脚本,供大家参考,也更加欢迎朋友提出来更加好的处理方法(win是真心的不懂) rman备份脚本 <div class="codetitle"><a style="CURSOR: pointer" data="17757" class="copybut" id="copybut17757" onclick="doCopy('code17757')"> 代码如下:<div class="codebody" id="code17757">  --backup_oracle.bat文件  rman target / cmdfile=D:/backup/rman/backup_db.rman  log=d:/backup/rman/logfile/rmanlog%date:~0,4%%date:~5,2%%date:~8,2%.log --backupdb.rman文件  CONFIGURE RETENTION POLICY TO REDUNDANCY = 2;  CONFIGURE DEVICE TYPE DISK PARALLELISM 2;  CONFIGURE DEFAULT DEVICE TYPE TO DISK;  backup filesperset = 5 as compressed backupset database format 'd:/backup/rman/full%U.rman';  sql 'alter system archive log current';  backup filesperset = 50 as compressed backupset archivelog all format 'd:/backup/rman/arch%U.rman' delete input;  DELETE noprompt OBSOLETE;  crosscheck backup;  delete noprompt expired backup;  backup format 'd:/backup/rman/ctl%U.rman' current controlfile;  backup spfile format 'd:/backup/rman/spfile_%U.rman' ;  exit; backup_oracle.bat
  文件加入到计划任务即可 删除dg备库归档日志(已经应用) <div class="codetitle"><a style="CURSOR: pointer" data="9471" class="copybut" id="copybut9471" onclick="doCopy('code9471')"> 代码如下:<div class="codebody" id="code9471"> --delete_dg_archivelog.bat  rem 注意修改 部署目录  cd D:/win_xifenfei  d:  rem 注意delete_archive.sql 查询是否有记录 echo delete archivelog staring > delete_archivelog.bak  sqlplus / as sysdba @delete_archive.sql  echo rman target / cmdfile=rman_checkcross.rman>>delete_archivelog.bat  delete_archivelog.bat >>delete_dgarchivelog%DATE:~0,4%%DATE:~5,2%%DATE:~8,2%".log  exit--delete_archive.sql  set lines 150  col name for a150  set pagesize 0 feedback off verify off heading off echo off  spool delete_archivelog.bat  select 'del '||name from v$archived_log where APPLIED='YES' AND NAME IS NOT NULL and DEST_ID=1;  spool off  exit; --rman_checkcross.rman  crosscheck archivelog all;  delete noprompt expired archivelog all;  exit delete_dg_archivelog.bat
  加入到计划任务即可                         (编辑:莱芜站长网) 
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! 
                     |