windows2008下 rman備份腳本
一般情況下 生產環境都是歸檔模式,但是有的公司一直用的是非歸檔方式
首先看下db的歸檔方式
SQL> archive log list;
如果是歸檔方式,就可以采用rman方式進行備份。
平臺:server 2008
database:oracle 10g
備份策略參考ocp中的 workshop II 文檔第三章(Differential Versus Cumulative部分)
周日全備份,周三和周五做累積增量備份,其他每天進行差異增量備份 下面是一個nocatlog方式的備份方案
1:周日 做一次0級備份,腳本名叫 run0-orcl.txt
保存策略:產生的備份在磁盤上保留14天,歸檔日志保留6天
腳本 run0-orcl.txt內容如下
run{
configure retention policy to recovery window of 14 days;
backup incremental level=0 database include current controlfile format 'C:\db_bak\fullback0_%d_%T_%s' plus archivelog format 'C:\archive_bak\arch0_%d_%T_%s' delete all input;
}
report obsolete;
crosscheck backup;
delete noprompt expired backup;
delete noprompt obsolete recovery window of 14 days;
delete noprompt archivelog until time 'SYSDAY-1';
注:如果是 windows2003,sysday應當改為 sysdate然后做一個 run0-orcl.bat的批處理文件,內容如下
C:
cd C:\備份腳本
set ORACLE_SID=ORCL
rman target / cmdfile='C:\備份腳本\run0-orcl.txt' log='C:\備份腳本\run0-orcl_%date:~0,10%.log'
2:周一、周二、周四和周六 做 1級差異增量備份,腳本名叫 run1d-orcl.txt
保存策略:產生的備份在磁盤上保留14天,歸檔日志保留6天
腳本 run1d-orcl.txt內容如下
run{
configure retention policy to recovery window of 14 days;
backup incremental level=1 database include current controlfile format 'C:\db_bak\fullback1d_%d_%T_%s' plus archivelog format 'C:\archive_bak\arch2d_%d_%T_%s' delete all input;
}
report obsolete;
crosscheck backup;
delete noprompt expired backup;
delete noprompt obsolete recovery window of 14 days;
delete noprompt archivelog until time 'SYSDAY-1';
然后做一個 run1d-orcl.bat的批處理文件,內容如下
C:
cd C:\備份腳本
set ORACLE_SID=ORCL
rman target / cmdfile='C:\備份腳本\run1d-orcl.txt' log='C:\備份腳本\run1d-orcl_%date:~0,10%.log'
3:周三和周五做 1級累積增量備份,腳本名字叫 run1c-orcl.txt
腳本 run1c-orcl.txt內容如下
run{
configure retention policy to recovery window of 14 days;
backup incremental level=1 cumulative database include current controlfile format 'C:\db_bak\fullback1c_%d_%T_%s' plus archivelog format 'C:\archive_bak\arch2c_%d_%T_%s' delete all input;
}
report obsolete;
crosscheck backup;
delete noprompt expired backup;
delete noprompt obsolete recovery window of 14 days;
delete noprompt archivelog until time 'SYSDAY-1';
然后做一個 run1c-orcl.bat的批處理文件,內容如下
C:
cd C:\備份腳本
set ORACLE_SID=ORCL
rman target / cmdfile='C:\備份腳本\run1c-orcl.txt' log='C:\備份腳本\run1c-orcl_%date:~0,10%.log'
4:設置執行任務
開始-----管理工具-----任務計劃程序
然后按照上面的腳本創建新的任務計劃
增量.jpg