Oracle数据库自动备份

1.bat脚本 格式为ANSI格式

set CURDATE=%date:~0,4%%date:~5,2%%date:~8,2%
set CURMON=%date:~0,4%%date:~5,2%
set CURTIME=%time:~0,2%
if "%CURTIME%"==" 0" set CURTIME=00
if "%CURTIME%"==" 1" set CURTIME=01
if "%CURTIME%"==" 2" set CURTIME=02
if "%CURTIME%"==" 3" set CURTIME=03
if "%CURTIME%"==" 4" set CURTIME=04
if "%CURTIME%"==" 5" set CURTIME=05
if "%CURTIME%"==" 6" set CURTIME=06
if "%CURTIME%"==" 7" set CURTIME=07
if "%CURTIME%"==" 8" set CURTIME=08
if "%CURTIME%"==" 9" set CURTIME=09
set CURTIME=%CURTIME%%time:~3,2%%time:~6,2%
set OWNER=数据库名称
set USER=用户名
set PASSWORD=密码
set RAR_CMD="C:\Program Files\WinRAR\WinRAR.exe"
for /f "tokens=1,2" %%a in ('date/t') do set TODAY=%%a

if not exist "DATABACK_DIR" mkdir DATABACK_DIR
cd DATABACK_DIR
if not exist "%CURMON%" mkdir %CURMON%
set FILENAME=%CURMON%/%OWNER%_%CURDATE%_%CURTIME%
set EXPLOG=%CURMON%/%OWNER%_%CURDATE%_%CURTIME%
exp %USER%/%PASSWORD%@%OWNER% file=%FILENAME%.dmp log=%FILENAME%exp.log owner=%USER% grants=n
%RAR_CMD% a -df "%FILENAME%back.rar" "%FILENAME%.dmp" "%FILENAME%exp.log"
exit

脚本可以直接复制修改使用

2.说明

1.DATABACK_DIR 为数据库映射本地实体文件夹对象名称 查询SQL为:SELECT * from dba_directories
img
2.OWNER 为数据库实例名称
3.USER 为数据库用户名称
4.PASSWORD 为数据库用户密码

备份完成之后会在具体的文件夹中,使用WinRAR进行压缩,压缩文件名称为:数据库实例名称_日期_时间.rar

3.创建任务计划程序

(开始“—>”所有程序“—>”附件“—>”系统工具“—>”任务计划程序“)
也可以 win+r 输入 taskschd.msc。
img

1.点击任务计划程序库,右击新建文件夹,输入文件夹名称BackUp
img
2.点击新建的文件夹“—>”右击创建基本任务
img
3.创建基本任务
img
img
img
img
位置为创建bat文件路径
img
img

点击运行,可以看已经在进行备份了
img
后续会定时将备份结果保存到指定的文件夹下
img

原文在此:https://blog.csdn.net/Wait_for_life/article/details/135642698

posted @ 2024-07-31 14:21  我本梁人  阅读(17)  评论(0编辑  收藏  举报