1、OracleBackup_expdp版本|oracle.bat文件
还需手动更改的内容如下:
调用格式需改成call %~dp0\OracleBackup 数据库 用户名 密码 文件夹名称
2、【ORACLE语句】创建导出路径.txt文件
还需手动更改的内容如下:
E:\app\Administrator在此路径下还需手动创建dpdata文件夹;
给用户授权读写导出目录sdemis3_t0需改成相对应数据库名称
 
3、OracleBackup_expdp版本|OracleBackup.bat文件
还需手动更改的内容如下:
变量设置模块SRC路径和【ORACLE语句】创建导出路径保持一致;
 
4、需将oracle.bat加到每日计划里面
时间设置为3天执行一次。

oracle.bat

@ECHO OFF
REM 调用格式:call %~dp0\OracleBackup 数据库 用户名 密码 文件夹名称 ECHO ----------------------------
ECHO 服务器:XXX.XXX.X.X
ECHO ----------------------------
ECHO.
ECHO --XXX:
ECHO.
ECHO XXX:用户名 密码
call %~dp0\OracleBackup 数据库 用户名 密码 文件夹名称
ECHO.

  OracleBackup.bat

@ECHO OFF
REM EMIS4开发数据库备份脚本,建议每周执行两次
REM !!!用户应当具备expdp导出的权限
REM !!!使用expdp方式导出,使用directory=dpdata,映射到数据库服务器上的E:\app\Administrator\dpdata\
REM 参数:OracleBackup 数据库 用户名 密码 文件夹名称
REM -----------------------变量设置--------------------------
REM Oracle中设置的DPDATA别名
SET DIRECTORYNAME=dpdata
REM Oracle中设置的DPDATA物理路径(位于ORACLE服务器上)
SET SRC=E:\app\Administrator\dpdata\
REM rar所在的路径
SET RAR=%~dp0rar.exe
REM 本次备份的文件的文件名(不包含后缀)
SET FILE=%2_%date:~,%%date:~,%%date:~,%
REM 指定要保留的天数
SET DaysAgo=
REM 指定要保留的最小文件个数
SET ReserveNum=
REM -----------------------程序开始--------------------------
ECHO 创建存放文件夹
md %SRC%%
ECHO 按日期完整导出EMIS开发数据库
expdp %/%@% directory=%DIRECTORYNAME% dumpfile=%FILE%.dmp schemas=%
ECHO 将导出的数据库进行压缩
%RAR% a -m5 -s -r -ep1 -y -idq %SRC%%\%FILE%.rar %SRC%%FILE%.dmp
ECHO 删除临时文件,只保留压缩后的数据库包
REM 如果压缩失败,不删除DMP文件
if exist "%SRC%%4\%FILE%.rar" (DEL "%SRC%%FILE%.dmp")
REM 如果DMP存在(压缩失败),复制到目标路径
if exist "%SRC%%FILE%.dmp" (MOVE /Y "%SRC%%FILE%.dmp" "%SRC%%4\%FILE%.dmp")
del %SRC%export.log REM 按文件的修改日期,删除DaysAgo以前的数据(暂时不用)
REM forfiles /p %SRC%% /s /m *.* /d -%DaysAgo% /c "cmd /c del /f /q /a @path" REM 计算要保留的最小日期
CALL :DateToDays %date:~,% %date:~,% %date:~,% PassDays
SET /a PassDays-=%DaysAgo%
CALL :DaysToDate %PassDays% DstYear DstMonth DstDay
REM 日期格式字符串为yyyyMMdd
SET DstDate=%DstYear%%DstMonth%%DstDay% ECHO 将删除日期为 %DstDate% 及以前的数据!
SETLOCAL ENABLEDELAYEDEXPANSION
ECHO 删除路径中的%DaysAgo%天以前的数据
for /r "%SRC%%4" %%a in (*.*) do (
REM 记录备份文件个数
SET "FileNum=0"
for /f "delims=" %%i in ('dir /B /A-D "%SRC%%4" 2^>nul') do set /a filenum+=
REM 防止备份出问题后,将所有备份文件删完,保留指定个数的备份文件
if !FileNum! leq %ReserveNum% (
ECHO 备份文件个数少于%ReserveNum%个,退出删除!
GOTO :EOF
)
REM 截取文件名中的日期部分
SET "FileDate=%%a"
SET "FileDate=!FileDate:~-12,-4!"
if "!FileDate!" leq "%DstDate%" (
if exist "%%a" (DEL /f /q "%%a")
)
)
ENDLOCAL GOTO :EOF :DateToDays %yy% %mm% %dd% days
SETLOCAL ENABLEEXTENSIONS
SET yy=%&SET mm=%&SET dd=%
IF %yy% LSS IF %yy% LSS (SET yy=%yy%) ELSE (SET yy=%yy%)
SET /a dd=%dd%%%,mm=%mm%%%
SET /a z=-mm,z/=,y=yy+-z,m=mm+*z-,j=*m+
SET /a j=j/+dd+y*+y/-y/+y/-
ENDLOCAL&SET %=%j%&GOTO :EOF :DaysToDate %days% yy mm dd
SETLOCAL ENABLEEXTENSIONS
SET /a a=%+,b=*a+,b/=,c=-b*,c/=,c+=a
SET /a d=*c+,d/=,e=-*d,e/=,e+=c,m=*e+,m/=,dd=*m+,dd/=
SET /a dd=-dd+e+,mm=-m/,mm*=,mm+=m+,yy=b*+d-+m/
(IF %mm% LSS SET mm=%mm%)&(IF %dd% LSS SET dd=%dd%)
ENDLOCAL&set %=%yy%&SET %=%mm%&SET %=%dd%&GOTO :EOF
Rar.exe

完整下载  ORACLE数据库EXPDP备份.zip

【备忘录】ORACLE数据库每日计划EXPDP备份的更多相关文章

  1. Oracle数据库导入导出简单备份

    oracle数据库简单备份 方法一: 1.导出 exp c##xmq/pwda@orcl owner=c##xmq file=C:/expdb.dmp buffer=8000 2.导入 2.1.删除原 ...

  2. Oracle数据库文件恢复与备份思路

    怎样才能对Oracle数据库进行备份?如何才能对删除的数据再进行恢复?这是困扰着很多人的问题.大家都知道,任何数据库在长期使用过程中,都会存在一定的安全隐患.对于数据库管理员来说不能仅寄希望于计算机操 ...

  3. mysql数据库和oracle数据库之间互相导入备份

    把从Oracle数据库导出的数据导入到MySql数据库中1. 使用默认的结束符号导入到MySql数据库中:    LOAD DATA LOCAL INFILE 'd:/oracle.txt' IGNO ...

  4. Oracle数据库导入导出(备份还原)

    一.数据库的导出 1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中(全库导出) exp system/manager@TEST file=d:\ ...

  5. mysql数据库每日定时自动备份

    使用navicat

  6. Windows Server系统定时任务备份ORACLE数据库

    Windows Server系统定时任务备份ORACLE数据库 一.编辑备份脚本 RMAN备份数据库 1.在备份脚本目录下,创建bat文件db_rman.bat set ORACLE_SID=orcl ...

  7. Oracle 数据库备份实战

    最近公司的客户希望使用oracle数据库,所以我们只好将数据从mysql数据库迁移到oracle数据库,并对oracle数据库制定了一个备份策略,之前虽然对oracle很熟悉,但做备份策略还是第一次, ...

  8. Oracle数据库表的备份和数据表的删除操作

    --Oracle数据库中的表备份: --备份语句:在备份之后就可以将这张表的所有数据源删除了,但是之后有人对这张表的数据进行操作,但是在操作完成之后要记得将数据表恢复 CREATE TABLE DZH ...

  9. oracle数据库的备份与还原(本地及远程操作)

    数据的导出 exp qh/qh@qh  file='d:\backup\qh\qh20060526.dmp'  grants=y  full=n  1 将数据库TEST完全导出,用户名system 密 ...

随机推荐

  1. 深入理解MySQL索引原理和实现——为什么索引可以加速查询?

    说到索引,很多人都知道“索引是一个排序的列表,在这个列表中存储着索引的值和包含这个值的数据所在行的物理地址,在数据十分庞大的时候,索引可以大大加快查询的速度,这是因为使用索引后可以不用扫描全表来定位某 ...

  2. windows环境jar包部署到linux服务器,一键操作(帮助说明)

    背景:在上次https://www.cnblogs.com/shexunyu/p/11165282.html发布了第一个版本后,后面增加了相关功能 需求:做下简单的说明文档 下载:https://fi ...

  3. PAT A1036 Boys vs Girls(25)

    AC代码 #include <cstdio> #include <algorithm> using namespace std; const int max_n = 11000 ...

  4. easyswoole报错:failed: Error during WebSocket handshake: Unexpected response code: 200

    WebSocket connection to 'ws://www.xxxx.com/xxx/xx' failed: Error during WebSocket handshake: Unexpec ...

  5. THUWC2020滚粗记

    \(Day-?\) 教练叫走了3个人,没叫我 感觉药丸,然后被告知pku没过,thu过了 神奇,然后就活了 后来在机房颓废,大声说笑被diss 当时感觉颓的有点过头,药丸 \(Day0\) 跟NC去T ...

  6. 启动Tomcat

    这篇随笔的重点关注启动Tomcat时会用到的两个类,分别是Catalina类 和 Bootstrap类,它们都位于org.apache.catalina.startup包下,Catalina类用于启动 ...

  7. 作业2:java内存模型图示

    参考:http://www.infoq.com/cn/minibooks/java_memory_model?utm_source=infoq&utm_campaign=user_page&a ...

  8. httpclient 上传附件实例

    httpclient 单附件上传实例  (扩展多附件上传实例,点我) /** * 上传附件 * @param host * @param uri * @param filePath 文件路径 * @p ...

  9. Vue-Cli项目如何查看依赖调用关系?

    Vue是个优秀的前端框架,不管是前端还是后端开发人员都能很快使用Vue来开发应用.但是随着项目开发的深入,组件之间的依赖就变得越来越多,耦合越来越严重.这时候我们迫切地需要分析下组件和依赖之间的调用关 ...

  10. python调用其他脚本

    1.用python调用python脚本 #!/usr/local/bin/python3. import time import os count = str = ('python b.py') re ...