bat命令备份oracle数据库,并且删除7天之前的数据文件
来源:互联网 发布:xmind 8 mac 注册码 编辑:程序博客网 时间:2024/06/07 12:34
用批处理命令备份oracle数据库,我是用在windows server 2008 服务器上,并且创建了定时任务,让他7天执行一次.下面贴出代码:
@echo offecho ================================================ echo Windows环境下Oracle数据库的自动备份脚本echo 1. 使用当前日期命名备份文件。echo 2. 自动删除7天前的备份。echo ================================================::以“YYYYMMDD”格式取出当前时间。set BACKUPDATE=%date:~0,4%%date:~5,2%%date:~8,2%set CURTIME=%time:~0,2%REM 小时数如果小于10,则在前面补0if "%CURTIME%"==" 0" set CURTIME=00if "%CURTIME%"==" 1" set CURTIME=01if "%CURTIME%"==" 2" set CURTIME=02if "%CURTIME%"==" 3" set CURTIME=03if "%CURTIME%"==" 4" set CURTIME=04if "%CURTIME%"==" 5" set CURTIME=05if "%CURTIME%"==" 6" set CURTIME=06if "%CURTIME%"==" 7" set CURTIME=07if "%CURTIME%"==" 8" set CURTIME=08if "%CURTIME%"==" 9" set CURTIME=09set CURTIME=%CURTIME%%time:~3,2%%time:~6,2% ::设置用户名、密码和要备份的数据库。set USER=sjptset PASSWORD=sjptset DATABASE=orclset nls_lang=american_america.al32utf8::创建备份目录。if not exist "D:\backup\data\%BACKUPDATE% " mkdir D:\backup\data\%BACKUPDATE%if not exist "D:\backup\log\%BACKUPDATE% " mkdir D:\backup\log\%BACKUPDATE%set DATADIR=D:\backup\data\%BACKUPDATE%set LOGDIR=D:\backup\log\%BACKUPDATE%set DELDATADIR=D:\backup\dataset DELLOGDIR=D:\backup\log::exp %USER%/%PASSWORD%@%DATABASE% file=%DATADIR%\%USER%_%BACKUPDATE%%CURTIME%.dmp log=%LOGDIR%\log_%BACKUPDATE%%CURTIME%.logecho 数据库文件备份成功,所在目录为: %DATADIR%echo 正在查找旧备份文件创建时间...::删除30天前的备份。::先判断要删除的文件是否存在for /r %DELDATADIR% %%a in (*) do for /f "tokens=1,2* delims= " %%b in ('dir /tc "%%a" ^| find /i "%%~nxa"') do (echo "%%b %%c"set /a dataCount+=1)for /r %DELLOGDIR% %%a in (*) do for /f "tokens=1,2* delims= " %%b in ('dir /tc "%%a" ^| find /i "%%~nxa"') do (echo "%%b %%c"set /a logCount+=1)if %dataCount% gtr 1 goto beginCleandata:iscleanlogif %logCount% gtr 1 goto beginCleanlogif %dataCount% equ 1 goto endif %logCount% equ 1 goto end::删除文件、删除空文件夹:beginCleandataforfiles /p "%DELDATADIR%" /s /m *.* /d -7 /c "cmd /c del @path"for /f "tokens=*" %%a in ('dir /b /ad /s "%DELDATADIR%"^|sort /r') do rd "%%a"goto iscleanlog:beginCleanlogforfiles /p "%DELLOGDIR%" /s /m *.* /d -7 /c "cmd /c del @path"for /f "tokens=*" %%a in ('dir /b /ad /s "%DELLOGDIR%"^|sort /r') do rd "%%a"echo 旧备份文件删除成功!pauseexit:endecho 无旧备份文件。echo 执行成功。pause
阅读全文
0 0
- bat命令备份oracle数据库,并且删除7天之前的数据文件
- 操作系统命令误删除数据库的数据文件并数据库没有备份的恢复
- windows下常用的bat命令(备份数据库、自动删除等)
- bat命令oracle自动备份
- oracle数据文件被删除没备份恢复
- 定时备份数据库文件,定时删除xx天之前的数据库备份文件
- 每天定时备份数据库,并删除30天之前的备份文件
- oracle误用操作系统命令删除数据文件的恢复方法
- MySQL 通过bat命令备份windows下的mysql数据库
- MySQL 通过bat命令备份windows下的mysql数据库
- oracle数据库使用nfs数据文件异常时加锁的删除
- java 调用 bat执行的备份Oracle数据库 类
- bat批处理实现数据库备份、压缩、删除
- oracle数据库备份命令
- Oracle数据库备份命令
- 批处理(.bat)命令 备份MySQL数据库
- 批处理命令 BAT备份MySQL数据库
- 在ORACLE数据库中彻底删除数据文件
- 自动化安装虚拟机
- C语言位操作中指定的某一位数置0、置1、取反
- HDU
- 深入浅出JMS(一)--JMS基本概念
- 我的电路实践
- bat命令备份oracle数据库,并且删除7天之前的数据文件
- 大话数据结构第四章栈十个问题及解答
- Termux的基础知识
- Linux基础练习(五)
- 巧用匿名函数重构你的代码
- EasyNVR HLS 、RTMP网页直播方案前端完善:监听表单变动
- U-Boot目录结构
- Npoi 读取EXCEL 2003 2007
- opencv篇之一 图像的读取和显示