windows下使用bat批處理文件定時自動備份oracle數據庫並上傳ftp服務器
阿新 • • 發佈:2018-07-06
upd 使用 pup bye upload ora file ftp服務器 .bat 使用bat批處理文件備份oracle(前提是配置好oracle數據庫客戶端)
在D盤目錄下創建個dbbackup目錄建個dbbak.bat
在D盤目錄下創建個dbbackup目錄建個dbbak.bat
@echo off echo ================================================ echo Windows環境下Oracle數據庫的自動備份腳本 echo 1. 使用當前日期命名備份文件。 echo 2. 自動刪除15天前的備份。 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:\dbbackup\data" mkdir D:\dbbackup\data if not exist "D:\dbbackup\log" mkdir D:\dbbackup\log set DATADIR=D:\dbbackup\data set LOGDIR=D:\dbbackup\log exp userid=‘ntes/123@orcl‘ file=%DATADIR%\njtes_%BACKUPDATE%.dmp log=%LOGDIR%\njtesog_%BACKUPDATE%.log ::刪除15天前的備份。 forfiles /p "%DATADIR%" /s /m *.* /d -15 /c "cmd /c del @path" forfiles /p "%LOGDIR%" /s /m *.* /d -15 /c "cmd /c del @path" ::上傳文件到FTP服務器 echo open IP地址>ftpupload.txt echo user 用戶名 密碼>>ftpupload.txt echo binary>>ftpupload.txt //設定以二進制方式傳送文件 echo hash>>ftpupload.txt //切換已傳輸的每個數據塊的數字簽名 (#) 打印 echo put %DATADIR%\njtes_%BACKUPDATE%.dmp>>ftpupload.txt //上傳文件 echo bye>>ftpupload.txt ftp -n -s:ftpupload.txt del ftpupload.txt /q .//刪除生成的ftpupload.txt文件,這個文件都是上面的信息可以不用保留 exit
註:dbbak.bat備份腳本放在了D:\dbbackup,如果ftpupload.txt文件不做刪除的話會在dbbak.bat腳本的(D:\dbbackup)同級目錄生成的。
windows下使用bat批處理文件定時自動備份oracle數據庫並上傳ftp服務器