【备忘录】ORACLE数据库每日计划EXPDP备份
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备份的更多相关文章
- Oracle数据库导入导出简单备份
oracle数据库简单备份 方法一: 1.导出 exp c##xmq/pwda@orcl owner=c##xmq file=C:/expdb.dmp buffer=8000 2.导入 2.1.删除原 ...
- Oracle数据库文件恢复与备份思路
怎样才能对Oracle数据库进行备份?如何才能对删除的数据再进行恢复?这是困扰着很多人的问题.大家都知道,任何数据库在长期使用过程中,都会存在一定的安全隐患.对于数据库管理员来说不能仅寄希望于计算机操 ...
- mysql数据库和oracle数据库之间互相导入备份
把从Oracle数据库导出的数据导入到MySql数据库中1. 使用默认的结束符号导入到MySql数据库中: LOAD DATA LOCAL INFILE 'd:/oracle.txt' IGNO ...
- Oracle数据库导入导出(备份还原)
一.数据库的导出 1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中(全库导出) exp system/manager@TEST file=d:\ ...
- mysql数据库每日定时自动备份
使用navicat
- Windows Server系统定时任务备份ORACLE数据库
Windows Server系统定时任务备份ORACLE数据库 一.编辑备份脚本 RMAN备份数据库 1.在备份脚本目录下,创建bat文件db_rman.bat set ORACLE_SID=orcl ...
- Oracle 数据库备份实战
最近公司的客户希望使用oracle数据库,所以我们只好将数据从mysql数据库迁移到oracle数据库,并对oracle数据库制定了一个备份策略,之前虽然对oracle很熟悉,但做备份策略还是第一次, ...
- Oracle数据库表的备份和数据表的删除操作
--Oracle数据库中的表备份: --备份语句:在备份之后就可以将这张表的所有数据源删除了,但是之后有人对这张表的数据进行操作,但是在操作完成之后要记得将数据表恢复 CREATE TABLE DZH ...
- oracle数据库的备份与还原(本地及远程操作)
数据的导出 exp qh/qh@qh file='d:\backup\qh\qh20060526.dmp' grants=y full=n 1 将数据库TEST完全导出,用户名system 密 ...
随机推荐
- windows ping命令
ping -a 192.168.xxx.xxx 解析计算机NetBios名 ping -n 数字 192.168.xxx.xxx 发送指定数量的echo数据包数,默认是四个 ping -l 192 ...
- ARC100E. Or Plus Max
题目 好题.没想出解法. 官方题解: 这个解法和 Small Multiple 那道题的解法有异曲同工之妙. 扩展 若把 $\mathsf{or}$ 改成 $\mathsf{and}$ 或者 $\ma ...
- spring-boot 使用jdk6(三)
环境 jdk 6 tomcat 7.0.59 sts 4.4.2 maven 3.2.5 背景 由于环境限制,还在使用 JDK6,所以需要将 spring boot 进行配置,支持JDK6. 以下所有 ...
- 01背包方案数(变种题)Stone game--The Preliminary Contest for ICPC Asia Shanghai 2019
题意:https://nanti.jisuanke.com/t/41420 给你n个石子的重量,要求满足(Sum<=2*sum<=Sum+min)的方案数,min是你手里的最小值. 思路: ...
- win7安装mongodb3.6
1. 下载 https://www.mongodb.com/download-center/enterprise 选择合适平台点击下载 2. 安装mongodb 在win7系统安装mongodb需要v ...
- WPF——Application
Application类处于WPF应用程序的最顶端,main函数就在这个类中. Application类的作用: 截图连接 https://docs.microsoft.com/zh-cn/dotne ...
- X86逆向7:特殊窗体的破解思路
本章我们来看两个案例,这两个案例同样使用爆破的方式破解,但是与其他的程序不同,这个程序没有弹窗,提示成功或失败使用的是图片或是一个类似图片的窗体,本章将学习两个新的API函数的使用技巧. ------ ...
- CVPR2019目标检测方法进展综述
CVPR2019目标检测方法进展综述 置顶 2019年03月20日 14:14:04 SIGAI_csdn 阅读数 5869更多 分类专栏: 机器学习 人工智能 AI SIGAI 版权声明:本文为 ...
- MySQL中导入Excel表格中的数据
在数据库中建立好响应的数据库.表(参考excel表格中列中的名字和内容): 将excel表格另存为txt文件,选择“文本文件(制表符分割)”: 打开相应的txt文件,只留下要导入的数据(windows ...
- Leaflet个人封装笔记
<!DOCTYPE html> <html> <head> <link href="style/leaflet.css" type=&qu ...