oracle数据库的ftp,【oracle】数据库自动备份并上传到ftp

创建bat文件,在把下面内容复制后修改!适用于windows!

@echo off

REM ###########################################################

REM # Windows下Oracle数据库自动备份批处理脚本

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%

::delete

set /a deldata=CURDATE-7

set RAR_CMD="C:\Program Files\WinRAR\Rar.exe"

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%

REM 设置所有者、用户名和密码

set OWNER=10.51.11.222:1521/xydb

set USER=dataquality

set PASSWORD=dataquality

REM 创建备份用目录,目录结构为oraclebak/YYYYMMDD/

if not exist "C:\databak\dataquality"                    mkdir C:\databack\dataquality

set DATADIR=C:\databak\dataquality

REM if not exist "%CURMON%"          mkdir %CURMON%

set FILENAME=dataquality_%CURDATE%.DMP

set EXPLOG=dataquality_%CURDATE%.log

set RARPATH=%CURDATE%.rar

REM 调用ORACLE的exp命令导出用户数据

exp %USER%/%PASSWORD%@%OWNER% file=%FILENAME% log=%EXPLOG% owner=%USER%

::设定连接ftp所需参数

set localdmp=C:\databak\dataquality\%FILENAME%

set locallog=C:\databak\dataquality\%EXPLOG%

set deletedmp=dataquality_%deldata%.DMP

set deltetlog=dataquality_%deldata%.log

set ftpip=10.50.10.111

set username=zzzz

set password=zzzz

set dataPath=.\databak\dataquality

::连接ftp

Echo open %ftpip% >ftp.up

Echo %username%>>ftp.up

Echo %password%>>ftp.up

::打开ftp路径并上传文件

Echo cd %dataPath% >>ftp.up

Echo binary>>ftp.up

Echo put %localdmp%>>ftp.up

Echo put %locallog%>>ftp.up

::delete

echo delete %deletedmp%>>ftp.up

echo delete %deltetlog%>>ftp.up

Echo bye>>ftp.up

FTP -s:ftp.up

del ftp.up /q

REM 压缩

REM %RAR_CMD% a -df "%RARPATH%" "%FILENAME%" "%EXPLOG%"

REM 删除30天前的备份。

set DaysAgo=30

forfiles /p %DATADIR% /s /m *.dmp /d -%DaysAgo% /c "cmd /c del /f /q /a @path"

exit

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值