RMAN备份全自动解决方案
2008-08-26 18:19:39
版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://sunwayle.blog.51cto.com/114995/95136 |
一 开启归档日志,并指定归档路径: 1.archive log list 查看是否已开启归档日志 2.shutdown immediate 3.startup mount 4.alter database archivelog 5.SQL> alter system set log_archive_dest_1='location=F:\archive' scope=spfile; 6.alter database open; 7.archive log list; 二 运行RMAN脚本,并加系统自带计划任务,自动执行 这个脚本可以改成配置ORACLE RMAN相关策略,可以自动保留或删除保留的文件。 connect target sys/password@oamis; run { allocate channel c1 type disk maxpiecesize=3G; allocate channel c2 type disk maxpiecesize=3G; allocate channel c3 type disk maxpiecesize=3G; allocate channel c4 type disk maxpiecesize=3G; allocate channel c5 type disk maxpiecesize=3G; backup full database tag 'full' filesperset 5 format 'f:\fullbak\Full_%d_%T_%s_%p.BAK' include current controlfile plus archivelog filesperset 6 format 'f:\fullbak\Arch_%d_%T_%s_%p.BAK' delete all input; release channel c1; release channel c2; release channel c3; release channel c4; release channel c5; } 三 做个脚本定期删除早于多少天的备份,防止因为磁盘空间不足导致归档没法进行而宕机。我设置为早一七天的备份文件会被自动删除。 第二步的脚本完善之后,这一步可以废掉。当然这个脚本也很有用。 @echo off setlocal enabledelayedexpansion set SrcDir=F:\fullbak >"F:\rman\MyDel.vbs" echo dt=date()-7 >>"F:\rman\MyDel.vbs" echo s=right(year(dt),4) ^& right("0" ^& month(dt),2) ^& right("0" ^& day(dt),2) >>"F:\rman\MyDel.vbs" echo wscript.echo s for /f %%a in ('cscript /nologo "F:\rman\MyDel.vbs"') do set DateFlag=%%a for /f "tokens=*" %%a in ('dir /s /b /a-d "%SrcDir%"') do ( set FileDate=%%~ta set FileDate=!FileDate:-=! set FileDate=!FileDate:~0,8! if !FileDate! lss %DateFlag% ( del /f /q "%%a" ) ) 四 把RMAN的全备份放一份到远程服务器上,做远程同步 可以用SyncBack(免费的软件),做个文件同步,并做个同步计划。 五 若因为手动删除过归档日志,会导致RMAN做全备份失败 启动 backup 于 26-8月 -08 当前日志已存档 释放的通道: c1 释放的通道: c2 释放的通道: c3 释放的通道: c4 释放的通道: c5 RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-03002: failure of backup plus archivelog command at 08/26/2008 18:16:45 RMAN-06059: expected archived log not found, lost of archived log compromises re coverability ORA-19625: 识别文件F:\ARCHIVELOG\ARC_1_445_652140357.DBF时出错 ORA-27041: 无法打开文件 OSD-04002: 无法打开文件 O/S-Error: (OS 2) 系统找不到指定的文件。 这时可以手动运行一下:crosscheck archivelog all; 再次执行RMAN全备份,就可以顺利进行了。 本文出自 “专注,技术成就梦想!----sunwayle.blog.51cto.com” 博客,请务必保留此出处http://sunwayle.blog.51cto.com/114995/95136 本文出自 51CTO.COM技术博客 |


sunwayle
博客统计信息
热门文章
最新评论
友情链接

