Oracle数据泵定时备份Windows
  IE5LYMWlmdvL 2023年11月02日 54 0

Windows上Oracle设置定时任务数据泵全备数据库,将备份文件传输至Linux系统备份目录下

参考文档

1.为输出路径建立一个数据库的directory对象。
登录windows数据库创建一个expdp导出本地的路径

sqlplus / as sysdba
create directory dumpfull as 'd:\bakup';

2.windows服务器上创建备份脚本

脚本名:expdp_bak_script.bat

@echo off   
::ORA环境变量。
set ORACLE_SID=orcl
set ORACLE_HOME=D:\app\Administrator\product\11.2.0\dbhome_1
::以“YYYYMMDD”格式取出当前时间。
set BACKUPDATE=%date:~0,4%%date:~5,2%%date:~8,2%
::设置导出的路径
set BAKDIR=D:\bakup
set NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
expdp \" / as sysdba \"  directory=dumpfull dumpfile=expbak_%ORACLE_SID%_%BACKUPDATE%.dmp logfile=expbak_%ORACLE_SID%_%BACKUPDATE%.log full=y

::压缩备份文件
zip -r %BAKDIR%\expbak_%ORACLE_SID%_%BACKUPDATE%.zip %BAKDIR%\expbak_%ORACLE_SID%_%BACKUPDATE%.dmp

::传输备份文件至Linux系统对应目录

Echo open 10.10.10.10 21 >ftp.up
Echo orabak>>ftp.up
Echo cd /oraclebakup >>ftp.up
Echo binary>>ftp.up
Echo put "%BAKDIR%\expbak_%ORACLE_SID%_%BACKUPDATE%.zip">>ftp.up
Echo bye>>ftp.up
FTP -s:ftp.up
del ftp.up /q


@echo::删除1天前的备份。  

forfiles /p %BAKDIR% /s /m *.dmp /d -1 /c "cmd /c del @path" 

forfiles /p %BAKDIR% /s /m *.zip /d -1 /c "cmd /c del @path" 

exit

3.Windows创建定时任务

(1)打开本地任务计划程序创建任务

Oracle数据泵定时备份Windows_expdp

(2)设置任务名称及对应的描述

Oracle数据泵定时备份Windows_备份_02

(3)设置触发器,每天触发任务的时间

Oracle数据泵定时备份Windows_备份_03

(4)设置定时备份脚本路径,确定任务

Oracle数据泵定时备份Windows_expdp_04

(5)任务计划程序库中查看新建的任务状态

Oracle数据泵定时备份Windows_expdp_05

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
IE5LYMWlmdvL