windows下使用bat批处理文件定时自动备份oracle数据库并上传ftp服务器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了windows下使用bat批处理文件定时自动备份oracle数据库并上传ftp服务器相关的知识,希望对你有一定的参考价值。
使用bat批处理文件备份oracle(前提是配置好oracle数据库客户端)
在D盘目录下创建个dbbackup目录建个dbbak.bat
@echo off
echo ================================================
echo Windows环境下Oracle数据库的自动备份脚本
echo 1. 使用当前日期命名备份文件。
echo 2. 自动删除15天前的备份。
echo ================================================
::以“YYYYMMDD”格式取出当前时间。
set BACKUPDATE=%date:~0,4%%date:~5,2%%date:~8,2%%Time:~0,2%%Time:~3,2%%Time:~6,2%
::创建备份目录。
if not exist "D:dbbackupdata" mkdir D:dbbackupdata
if not exist "D:dbbackuplog" mkdir D:dbbackuplog
set DATADIR=D:dbbackupdata
set LOGDIR=D:dbbackuplog
exp userid=‘ntes/[email protected]‘ file=%DATADIR%
jtes_%BACKUPDATE%.dmp log=%LOGDIR%
jtesog_%BACKUPDATE%.log
::删除15天前的备份。
forfiles /p "%DATADIR%" /s /m *.* /d -15 /c "cmd /c del @path"
forfiles /p "%LOGDIR%" /s /m *.* /d -15 /c "cmd /c del @path"
::上传文件到FTP服务器
echo open IP地址>ftpupload.txt
echo user 用户名 密码>>ftpupload.txt
echo binary>>ftpupload.txt //设定以二进制方式传送文件
echo hash>>ftpupload.txt //切换已传输的每个数据块的数字签名 (#) 打印
echo put %DATADIR%
jtes_%BACKUPDATE%.dmp>>ftpupload.txt //上传文件
echo bye>>ftpupload.txt
ftp -n -s:ftpupload.txt
del ftpupload.txt /q .//删除生成的ftpupload.txt文件,这个文件都是上面的信息可以不用保留
exit
注:dbbak.bat备份脚本放在了D:dbbackup,如果ftpupload.txt文件不做删除的话会在dbbak.bat脚本的(D:dbbackup)同级目录生成的。
以上是关于windows下使用bat批处理文件定时自动备份oracle数据库并上传ftp服务器的主要内容,如果未能解决你的问题,请参考以下文章