Oracle數據庫定時自動備份批處理代碼_第1頁
Oracle數據庫定時自動備份批處理代碼_第2頁
Oracle數據庫定時自動備份批處理代碼_第3頁
Oracle數據庫定時自動備份批處理代碼_第4頁
Oracle數據庫定時自動備份批處理代碼_第5頁
已閱讀5頁,還剩2頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

echooffsetpweek=%date:~-1%setfn=e:\bakdb\gdosys_dqgis%Date:~0,4%%Date:~5,2%%Date:~8,2%if%pweek%equ日(expsystem/sysorclfile=%fn%.dmpowner=gdosys,dqgislog=%fn%.lograra%fn%.rar%fn%.*del%fn%.dmpdel%fn%.log)else(expsystem/sysorclfile=d:\bakweek\%date:~8,2%.dmpowner=gdosys,dqgislog=d:\bakweek\%date:~8,2%.logremexpsystem/sysorclfile=d:\bakweek\%date:~11,3%.dmpowner=gdosyslog=d:\bakweek\%date:~11,3%.log)hi.baidu./lvns/blog/item/beb171d3c2fa2cd6a8ec9a2d.html這是最近寫的一個Oracle數據庫自動備份的批處理,經過測試正常運行,記錄如下。包括兩部分,邏輯備份和冷備份,如有不完整之處,還往看到本文的高手指導!注:這些容是本人經過一番學習和多次測試調試后的結果,如果想,請以連接的形式,合作!第一部分,邏輯備份下面是:AutoBackup_Logic.bat--邏輯備份的主文件,直接在計劃任務中調用就可以了。echooffremrem需要配置的參數說明:remBAT_HOME即本批處理所在的目錄;remDUMP_DIR:即要備份到的數據文件目錄,存在與數據字典表:dba_directories中。remsetBAT_HOME=E:\BATsetDUMP_DIR=E:\Temp\DBBackupsetBKFILE=%Date:~0,4%%Date:~5,2%%Date:~8,2%setHHMMSS=%time:~0,2%%time:~3,2%%time:~6,2%call%BAT_HOME%\LogicBackup.bat%DUMP_DIR%>%BAT_HOME%\LogicBackup_%BKFILE%%HHMMSS%.logechoCompleted!下面是:LogicBackup.batechooffremcallLogicBackup.bat%DUMP_DIR%remrem本批處理實現(xiàn)支持expdp數據泵的Oracle數據庫版本的數據庫邏輯備份,流程為:導出數據到remdump_dir數據庫目錄下,然后把dmp文件以rar格式放入當天備份日期命名的目錄下便于以后按rem照日期恢復。remrem需要配置的參數說明:remBAT_HOME即本批處理所在的目錄;remBKDIR:是調用本批處理時傳進來的參數dump_dir,即要備份到的數據文件目錄。remremAuthor:SanlavoremTime:2007-06-07remremecho備份開始...echo當前的時間是:%DATE%%time%setBAT_HOME=E:\BATsetBKDIR=%1setBKFILE=%Date:~0,4%%Date:~5,2%%Date:~8,2%setHHMMSS=%time:~0,2%%time:~3,2%%time:~6,2%expdpsystem/sysparfile=%BAT_HOME%\ScriptsLib\parfiletest.sqlifnotexist%BKDIR%\%BKFILE%_LOGIC(md%BKDIR%\%BKFILE%_LOGIC)else(echo目錄%BKDIR%\%BKFILE%_LOGIC已經存在)echo開始壓縮文件...rara%BKDIR%\%BKFILE%_LOGIC\%BKFILE%%HHMMSS%_LOGIC_FULL.rar%BKDIR%\*.dmpecho壓縮文件%BKFILE%%HHMMSS%_LOGIC_FULL.rar完成echo開始移動文件...move%BKDIR%\*.dmp%BKDIR%\%BKFILE%_LOGIC\move%BKDIR%\*.log%BKDIR%\%BKFILE%_LOGIC\echo移動文件完成echo開始刪除dmp文件...del/f/s/q%BKDIR%\%BKFILE%_LOGIC\*.dmpecho刪除dmp文件完成netsend%userdomain%"數據庫邏輯備份已于:%DATE%%time%完成!"echo.echo備份已于:%DATE%%time%完成!echo.rem移動批處理的日志文件到備份目錄下面xcopy%BAT_HOME%\LogicBackup_%BKFILE%*.log%BKDIR%\%BKFILE%_LOGIC\echoSuccessfullyCompleted!下面是expdp的parfile參數的文件(parfiletest.sql)容:directory=dump_dirdumpfile=DBBackup_Logic_%U.dmplogfile=DBBackup_Logic.logfilesize=80Mfull=yjob_name=EXP_DB_FULL到此,邏輯備份批處理完成,可以用命令來定時執(zhí)行,例如:c:\>at06:06/every:SE:\BAT\AutoBackup_Logic.bat這樣,邏輯備份將會在每周星期六凌晨六點六分執(zhí)行。第二部分,冷備份:下面是:AutoBackup.bat--主文件echooffsetBAT_HOME=E:\BATsetDUMP_DIR=E:\Temp\DBBackupcallColdBackup.batorcl%DUMP_DIR%>%BAT_HOME%\ColdBackup_%DATE:~0,10%.logpause下面是備份流程文件:ColdBackup.batechooffremE:\BAT>ColdBackup.batorclE:\Temp\DBBackupremrem==============================================rem要備份的文件列表有:參數文件、控制文件、數據文件、重做日志文件remrem參數文件有:rem%ORACLE_HOME%\database\spfile<sid>.orarem%ORACLE_HOME%\database\PWD<sid>.orarem%ORACLE_HOME%\database\pfile<sid>.oraremrem控制文件:可以通過查詢數據字典視圖v$control確認控制文件的位置和清單remselectstatus,namefromv$controlfile;remrem數據文件:可以通過查詢數據字典視圖dba_data_files確定數據文件的位置和清單remselectstatus,file_namefromdba_data_files;remrem重做日志文件:查詢數據字典v$logfile可以確認聯(lián)機重做日志文件的位置和清單remselectgroup#,status,memberfromv$logfile;remAuthor:SanlavoremTime:11:352007-5-31rem==============================================remrem請在這里配置好本批處理程序所放的路徑BAT_HOME以及ORACLE_HOME:setORACLE_HOME=D:\oracle\product\10.2.0\db_1setBAT_HOME=E:\BATsetBKFILE=%Date:~0,4%%Date:~5,2%%Date:~8,2%setHHMMSS=%time:~0,2%%time:~3,2%%time:~6,2%rem數據庫脫機call%BAT_HOME%\ShutdownDB.bat%1rem%1為數據庫vSID>%2為備份文件路徑rem創(chuàng)建備份目錄ifexist%2\%BKFILE%_DBBackup(echo%2\%BKFILE%_DBBackup已經存在)else(mkdir%2\%BKFILE%_DBBackupecho%2\%BKFILE%_DBBackup已經創(chuàng)建)remcopy備份文件到備份目錄中remcallxcopyfiles.bat%1%2rembegin==============================================echo數據庫%1冷備份開始...rem備份dbs目錄下參數文件xcopy%ORACLE_HOME%\dbs\*.*%2\%BKFILE%_DBBackup\dbs/S/I/C/Y/Frem備份%ORACLE_HOME%\database目錄下參數文件xcopy%ORACLE_HOME%\database\*.*%2\%BKFILE%_DBBackup\database/S/I/C/Y/EXCLUDE:ScriptsLib\databaseExclude.lst/Frem備份數據庫控制文件、數據文件、重做日志文件rem創(chuàng)建數據庫<SID>命名的文件夾,存放相關文件ifnotexist%2\%BKFILE%_DBBackup\%1(md%2\%BKFILE%_DBBackup\%1)rem從filepath.txt中讀取文件路徑信息并copy到目標路徑for/f%%iin(%BAT_HOME%\ScriptsLib\filepath.txt)do(xcopy%%i%2\%BKFILE%_DBBackup\%1/S/I/C/Y/F)echo數據庫%1冷備份完成!remend==============================================echo啟動數據庫rem上面的操作過程中以及修改了環(huán)境路徑,所以掉不到該批處理文件%BAT_HOME:~0,2%cd%BAT_HOME%call%BAT_HOME%\StartupDB.bat%1:Operation:Endremifexist*.dmp(remmove*.dmp%BKFILE%_DBBackup&gotoEnd1remechoMovedumpfilesuccessfullrem)else(remecho不存在數據庫備份文件&gotoEnd1rem)remEndrem::把日期目錄下的文件移動到當前目錄rem::move%BKFILE%_DBBackup\*.batrem:End1remecho*remechoOperationSuccessfullyremecho*pause上文中的:databaseExclude.lst容如下:.log.exe即,排除日志文件和exe文件,其他的全部備份。上文中的:filepath.txt容是經過數據字典查詢后得到的比如控制文件、數據文件、日志文件等的路徑列表,例如:D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL01.CTLD:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL02.CTLD:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL03.CTLD:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS01.DBFD:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSAUX01.DBFD:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\UNDOTBS01.DBFD:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSTEM01.DBFD:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\EXAMPLE01.DBFD:\SDEDB.DBFE:\SDEDB\SDE_DATA01.DBFE:\SDEDB\SDE_INDEX01.DBFD:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\WJ01.DBFD:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01.LOGD:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO02.LOGD:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO03.LOG在冷備份中涉及到數據庫的關閉和啟動,這里不在羅索了。關于冷備份的執(zhí)行,也可以模仿邏輯備份部分,在計劃任務中調用。第三部分,熱備份:remscript:hotbak.sqlremcreater:chenjipingremdate:4.4.2002remdesc:backupdatabasedatafileinarchive--connectdatabaseconnectinternal/virpure;--archivealtersystemcheckpoint;altersystemarchivelogall;altersystemswitchlogfile;--startaltertablespaceafis_remotebeginbackup;!xcopye:\orant\database\remote_data1.orae:\databak/H/R;!xcopye:\orant\database\remote_data2.orae:\databak/H/R;altertablespaceafis_remoteendbackup;altertablespaceafis_rmtafisbeginbackup;!xcopye:\orant\database\remote_data1.orae:\databak/H/R;!xcopye:\orant\database\remote_data2.orae:\databak/H/R;altertablespaceafis_remoteendbackup;altertablespaceafis_rmtafisbeginbackup;!xcopye:\orant\database\rmtafis_data1.orae:\databak/H/R;!xcopye:\orant\database\rmtafis_data2.orae:\databak/H/R;altertablespaceafis_rmtafisendbackup;!xcopye:\orant\database\rmtafis_data1.orae:\databak/H/R;!xcopye:\orant\database\rmtafis_data2.orae:\databak/H/R;altertablespaceafis_rmtafisendbackup;altertablespaceafis_lquserbeginbackup;!xcopye:\orant\database\lquser_data.orae:\databak/H/R;altertablespaceafis_lquserbeginbackup;!xcopye:\orant\database\lquser_data.orae:\databak/H/R;backup;altertablespaceafis_lquserendaltertablespaceafis_transfbeginbackup;backup;!xcopye:\orant\database\transf1_data.orae:\databak/H/R;!xcopye:\orant\database\transf2_data.orae:\databak/H/R;altertablespaceafis_transfendbackup;altertablespacesystembeginbackup;!xcopye:\orant\database\sys1afis.orae:\databak/H/R;altertablespacesystemendbackup;altertablespacerbsbeginbackup;!xcopye:\orant\database\rbs1afis.orae:\databak/H/R;altertablespacerbsendbackup;altertablespaceusrbeginbackup;!xcopye:\orant\d

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論