从永远到永远-Oracle数据库备份(定时)

Oracle数据库部署在Windows Server上,利用OS的定时任务功定时执行脚本进行备份操作,备份方式采用 expdp数据泵备份。
待补理论部分

1、管理员身份创建目录用于存放备份文件

create directory dir_sales as 'D:\expdp_sales_bak';

2、赋予用户对该目录的操作权限

Grant read,write on directory dir_sales to hztest;

3、赋予用户导入、导出权限

grant exp_full_database,imp_full_database to hztest;

4、准备脚本,XXX和PPP换成自己的

@echo off 
REM ########################################################### 
REM # Windows Server下Oracle数据库自动备份批处理脚本
REM # 使用expdb命令导出需要先在数据库中创建备份文件存贮目录
REM ########################################################### 
REM 取当前系统时间,可能因操作系统不同而取值不一样 

set CURDATE=%date:~0,4%%date:~5,2%%date:~8,2%
set CURMON=%date:~0,4%%date:~5,2%
set CURTIME=%time:~0,2%

REM 小时数如果小于10,则在前面补0 
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=orcl


echo 正在备份 XXX(测试)数据库,请稍等……
set USER=XXX
set PASSWORD=PPP
set FILENAME=%USER%_%OWNER%_%CURDATE%_%CURTIME%.dmp
set EXPLOG=%USER%_%OWNER%_%CURDATE%_%CURTIME%.log 

expdp %USER%/%PASSWORD%@%OWNER% DIRECTORY=DIR_SALES DUMPFILE=%FILENAME% LOGFILE=%EXPLOG%
FORFILES /P D:\expdp_sales_bak /M *.dmp /D -10 /C "cmd /c del @path"
FORFILES /P D:\expdp_sales_bak /M *.log /D -10 /C "cmd /c del @path"
exit

5、配置到Windows Server使其定时执行
开始种搜索“任务计划程序”
1)创建任务
在这里插入图片描述
2)新建触发器
在这里插入图片描述
在这里插入图片描述
3)操作,指定脚本,确定
在这里插入图片描述
4)配置条件,默认即可
在这里插入图片描述
5)设置条件,自己情况来吧,确定,这样就可以了。
在这里插入图片描述

明天看下效果

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值