程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> oracle數據庫定時備份,oracle數據庫備份

oracle數據庫定時備份,oracle數據庫備份

編輯:Oracle教程

oracle數據庫定時備份,oracle數據庫備份


  現有需求,設計一批處理文件,實現周一全部備份,周二周三周五周六增量備份,周四周日累計備份。並且每日將上個月本日數據刪除(如今日8月7號,則刪除7月7號的數據).並將備份壓縮以減小所占空間。

  思路:

  備份:1)、刪除上個月數據。

     2)、通過判斷今天周幾執行不同的備份命令。

     3)、將備份文件添加到壓縮包。

     4)、將備份文件刪除。

  還原:若周六數據庫出現問題,則需全部導入周一備份,導入周四累計備份,導入周五增量備份。

  備份具體代碼:

@rem:delete the history backups
del /f /s /q F:\備份\*%date:~8,2%.zip
@rem:create the new backups
if "%date:~12,1%" == "一" exp XXXXXX/XXXXXX inctype=complete file=f:/備份/%date:~0,4%%date:~5,2%%date:~8,2%.dmp
if "%date:~12,1%" == "二" exp XXXXXX/XXXXXX inctype=incremental file=f:/備份/%date:~0,4%%date:~5,2%%date:~8,2%.dmp
if "%date:~12,1%" == "三" exp XXXXXX/XXXXXX inctype=incremental file=f:/備份/%date:~0,4%%date:~5,2%%date:~8,2%.dmp
if "%date:~12,1%" == "四" exp XXXXXX/XXXXXX inctype=cumulative file=f:/備份/%date:~0,4%%date:~5,2%%date:~8,2%.dmp
if "%date:~12,1%" == "五" exp XXXXXX/XXXXXX inctype=incremental file=f:/備份/%date:~0,4%%date:~5,2%%date:~8,2%.dmp
if "%date:~12,1%" == "六" exp XXXXXX/XXXXXX inctype=incremental file=f:/備份/%date:~0,4%%date:~5,2%%date:~8,2%.dmp
if "%date:~12,1%" == "七" exp XXXXXX/XXXXXX inctype=cumulative file=f:/備份/%date:~0,4%%date:~5,2%%date:~8,2%.dmp
@rem:take the backups to zip
"E:\Program Files (x86)\WinRAR\WinRAR.exe" a F:\備份\%date:~0,4%%date:~5,2%%date:~8,2%.zip F:\備份\%date:~0,4%%date:~5,2%%date:~8,2%.dmp
@rem:delete the new backups
del /f /s /q F:\備份\*%date:~8,2%.dmp
pause

  注:1)、因壓縮時需要用到壓縮軟件,所以盡量安裝winrar這個壓縮軟件,360等也可以,但有時候會出現意想不到的問題。

    2)、本批處理中所有生成文件全部用當前時間作為文件名,看不懂的百度或留言。

  還原具體代碼:

imp XXXXXX/XXXXXX inctype=restore FULL=Y FILE=F:\備份\20150807.dmp

  注:還原時只需要修改一下導入的文件名就可以了。

  此處導入導出未設置log文件,可自行設置。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved