修改下方脚本配置,创建bat文件,在windows自带的定时任务中设置定时执行bat文件
@title backup_oracle
@ECHO OFF
::数据库
SET SID=192.168.1.30/ORCL
::用户名
SET USERNAME_DATACENTER=DATACENTER
::密码
SET PASSWORD_DATACENTER=DATACENTER
::命令集
SET CONNECT_DATACENTER=%USERNAME_DATACENTER%/%PASSWORD_DATACENTER%@%SID%
::备份位置 ps:需先创建该目录
SET BACK_PATH=D:\slzyOracleBak\databack\
::日期
SET DATE_STRING=%date:~0,4%_%date:~5,2%_%date:~8,2%
::时间
::SET TIME_STRING=%time:~0,2%_%time:~3,2%_%time:~6,2%
SET TIME_STRING=01
::文件名
SET FILE_STRING_DATACENTER=%BACK_PATH%DATACENTER_%DATE_STRING%_%TIME_STRING%.dmp
::备份数据库 ,用户下的所有表
exp %CONNECT_DATACENTER% file=%FILE_STRING_DATACENTER% INDEXES=y grants=y constraints=y compress=n
::压缩
SET ZIP_FILE=%BACK_PATH%oracle_%DATE_STRING%_%TIME_STRING%.zip
zip %ZIP_FILE% %FILE_STRING_DATACENTER%
::删除
del -f %FILE_STRING_DATACENTER%
::删除该目录下30天前的数据
forfiles /p %BACK_PATH% /s /m *.* /d -30 /c "cmd /c del @path"