基于Windows操作系统的oracle数据库定时自动备份

本文介绍如何在Windows环境下为Oracle数据库创建自动备份方案,包括备份脚本的编写、批处理文件的制作及定时任务的设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一:创建备份dmp文件及日志路径


dmp文件路径:C:\db_bak\files

日志路径:C:\db_bak\logs




二:创建自动备份批处理文件

   2.1 创建记事本text文件


复制以下内容到记事本中

@echo off
echo ================================================ 
echo  Windows环境下Oracle数据库的自动备份脚本
echo  1. 使用当前日期命名备份文件。
echo  2. 自动删除30天前的备份。
echo ================================================
::以“YYYYMMDD”格式取出当前时间。
set BACKUPDATE=%date:~0,4%%date:~5,2%%date:~8,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 USER=BSQAM1
set PASSWORD=BSQAM1
set DATABASE=orcl


::创建备份目录。
if not exist "C:\db_bak\files\%BACKUPDATE% "     mkdir C:\db_bak\files\%BACKUPDATE%
if not exist "C:\db_bak\logs\%BACKUPDATE% "      mkdir C:\db_bak\logs\%BACKUPDATE%
set DATADIR=C:\db_bak\files\%BACKUPDATE%
set LOGDIR=C:\db_bak\logs\%BACKUPDATE%
exp %USER%/%PASSWORD%@%DATABASE%  file=%DATADIR%\%USER%_%BACKUPDATE%%CURTIME%.dmp log=%LOGDIR%\log_%BACKUPDATE%%CURTIME%.log
::删除30天前的备份。可以修改删除日期
forfiles /p "%DATADIR%" /s /m *.* /d -30 /c "cmd /c del @path"
forfiles /p "%LOGDIR%" /s /m *.* /d -30 /c "cmd /c del @path"
exit


2.2 把text文件后缀改为bat格式形成批处理文件



三 创建定时任务 

 3.1 创建基本任务


3.2 进行相关设置

  创建基本任务》》触发器》》操作》》完成


如图进行相关设置即可 最后点击完成








完成后查看任务:




到此为止数据库定时自动备份完成 

注意:可以修改任务开始时间进行相关测试




   




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值