windows下oracle数据库自动备份脚本
1、根據日期自動生成 Oracle 備份文件
@echo off ?
echo 正在備份Oracle數據庫,請稍等...... ?
exp userid='用戶名/密碼@SID' file=D:\bak\res_%date:~0,4%%date:~5,2%%date:~8,2%.dmp log=D:\bak\res_%date:~0,4%%date:~5,2%%date:~8,2%.log owner=res ?
echo 任務完成!
2、根據日期時間分秒自動生成 Oracle 備份文件
@echo off ?
echo 正在備份Oracle數據庫,請稍等...... ?
exp userid='用戶名/密碼@SID' file=D:\bak\res_%date:~0,4%%date:~5,2%%date:~8,2%%Time:~0,2%%Time:~3,2%%Time:~6,2%.dmp log=D:\bak\res_%date:~0,4%%date:~5,2%%date:~8,2%%Time:~0,2%%Time:~3,2%%Time:~6,2%.log
echo 任務完成!
3、用exit結尾備份完后自動退出:
@echo off ??
echo ================================================ ??
echo ?Windows環境下Oracle數據庫的自動備份腳本 ?
echo ?1. 使用當前日期命名備份文件。 ?
echo ?2. 自動刪除7天前的備份。 ?
echo ================================================ ?
::以“YYYYMMDD”格式取出當前時間。 ?
set BACKUPDATE=%date:~0,4%%date:~5,2%%date:~8,2%%Time:~0,2%%Time:~3,2%%Time:~6,2%
::創建備份目錄。 ?
if not exist "D:\backup\data" ? ?mkdir D:\backup\data ?
if not exist "D:\backup\log" ? ? mkdir D:\backup\log ?
set DATADIR=D:\backup\data
set LOGDIR=D:\backup\log
exp userid='用戶名/密碼@SID' ?file=%DATADIR%\data_%BACKUPDATE%.dmp log=%LOGDIR%\log_%BACKUPDATE%.log ?
::刪除7天前的備份。 ?
forfiles /p "%DATADIR%" /s /m *.* /d -7 /c "cmd /c del @path" ?
forfiles /p "%LOGDIR%" /s /m *.* /d -7 /c "cmd /c del @path" ?
exit
注:如果有時我們寫bat腳本執行時一閃而過,無法排錯;那么我可以在腳本的最后加個pause(如上面的腳本可以把exit換成pause),用pause結尾執行完后,會提示按任意鍵來繼續或退出,這樣我就能知道是什么報錯。
? ? ? 本文轉自ling118 51CTO博客,原文鏈接:http://blog.51cto.com/meiling/1573848,如需轉載請自行聯系原作者
總結
以上是生活随笔為你收集整理的windows下oracle数据库自动备份脚本的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python高阶函数和匿名函数
- 下一篇: mysql5.7 solo web服务器