oracle数据库定时备份
现有需求,设计一批处理文件,实现周一全部备份,周二周三周五周六增量备份,周四周日累计备份。并且每日将上个月本日数据删除(如今日8月7号,则删除7月7号的数据).并将备份压缩以减小所占空间。
思路:
备份:1)、删除上个月数据。
2)、通过判断今天周几执行不同的备份命令。
3)、将备份文件添加到压缩包。
4)、将备份文件删除。
还原:若周六数据库出现问题,则需全部导入周一备份,导入周四累计备份,导入周五增量备份。
备份具体代码:
@rem:delete the history backups
del /f /s /q F:\备份\*%date:~,%.zip
@rem:create the new backups
if "%date:~12,1%" == "一" exp XXXXXX/XXXXXX inctype=complete file=f:/备份/%date:~,%%date:~,%%date:~,%.dmp
if "%date:~12,1%" == "二" exp XXXXXX/XXXXXX inctype=incremental file=f:/备份/%date:~,%%date:~,%%date:~,%.dmp
if "%date:~12,1%" == "三" exp XXXXXX/XXXXXX inctype=incremental file=f:/备份/%date:~,%%date:~,%%date:~,%.dmp
if "%date:~12,1%" == "四" exp XXXXXX/XXXXXX inctype=cumulative file=f:/备份/%date:~,%%date:~,%%date:~,%.dmp
if "%date:~12,1%" == "五" exp XXXXXX/XXXXXX inctype=incremental file=f:/备份/%date:~,%%date:~,%%date:~,%.dmp
if "%date:~12,1%" == "六" exp XXXXXX/XXXXXX inctype=incremental file=f:/备份/%date:~,%%date:~,%%date:~,%.dmp
if "%date:~12,1%" == "七" exp XXXXXX/XXXXXX inctype=cumulative file=f:/备份/%date:~,%%date:~,%%date:~,%.dmp
@rem:take the backups to zip
"E:\Program Files (x86)\WinRAR\WinRAR.exe" a F:\备份\%date:~,%%date:~,%%date:~,%.zip F:\备份\%date:~,%%date:~,%%date:~,%.dmp
@rem:delete the new backups
del /f /s /q F:\备份\*%date:~,%.dmp
pause
注:1)、因压缩时需要用到压缩软件,所以尽量安装winrar这个压缩软件,360等也可以,但有时候会出现意想不到的问题。
2)、本批处理中所有生成文件全部用当前时间作为文件名,看不懂的百度或留言。
还原具体代码:
imp XXXXXX/XXXXXX inctype=restore FULL=Y FILE=F:\备份\.dmp
注:还原时只需要修改一下导入的文件名就可以了。
此处导入导出未设置log文件,可自行设置。
oracle数据库定时备份的更多相关文章
- windows下oracle数据库定时备份与压缩批处理脚本(win7/win2008亲测通过)
第一种方式:全备份,并直接覆盖原来的备份文件,固定命名. 脚本: @echo off exp system/a123@HZPG file=e:\db_backup\oradata.dmp log=e: ...
- 32. linux下oracle数据库定时备份
这里以oradatabak.sh(里面的内容要根据实际修改)脚本放在/u01/11g/datapump下为例: #1.添加脚本执行权限 chmod +x /u01/11g/datapump/orada ...
- Windows下设置oracle数据库定时备份
1编写备份脚本 echo backup oracle database...... echo %~dp0 set file_dir=%~dp0 echo backup time...... set & ...
- 服务器oracle数据库定时备份
首先要先建立一个.bat的文件 然后执行这个bat文件 测试是否能得到这个收据库的打包文件. bat文件内容: @echo off@color bdel /f /s /q D:\oracle\bac ...
- Oracle数据库的备份方法
1.引言 Oracle数据库的备份方法很多,无论使用那种备份方法,备份的目的都是为了在出现故障后能够以尽可能小的时间和代价恢复系统.比如使用export实用程序导出数据库对象.使用Oracle备份数据 ...
- Windows下Oracle数据库自动备份批处理脚本
expdb命令版本 @echo off REM ########################################################### REM # Windows Se ...
- Mysql Navicat数据库定时备份,定时删除
Navicat自带实现数据库定时备份 1.先点击需要备份的数据库,然后点击计划,再点击新建批处理作业 2.然后出现双机可用任务列表,然后在已选择的任务中会出现可用任务 3. 点击保存,弹出对话框,给这 ...
- SQL Server数据库定时备份解决方案
SQL Server数据库定时备份解决方案 1.本方案采用软件为:SQLBackupAndFTP 10.0.3 版本,压缩包自带注册机,请自行破解. 2.软件截图如下: 3.功能说明:自动定时备份相关 ...
- oracle 数据库数据备份
oracle 数据库数据备份 1.使用oracle用户应该就可以进行数据备份(不需要root用户):su oracle 查oracle实例名:echo $ORACLE_SID 例如查出来的 ...
随机推荐
- 一个最简单的Servlet实例
先在tomcat的webapps目录下,新建一目录,如test.然后,在test目录下建立WEB-INF为名的目录.这个必须有. 然后,在WEB-INF目录下建立classes目录.用以存储所用到的c ...
- mysql复制延迟监控脚本
#!/bin/sh #ocpyang@126.com #repdelay.sh #查看复制延迟详细多少event #####1.juede the rep slave status export bl ...
- 解决burp suite 使用chrome訪问https失真的问题
用burp suite 訪问https网页 尤其使用chrome(有时候firefox也会) 会出现js或者css载入不出来的情况 这样的时候,导出burp suite的证书,保存为cer格式 然后进 ...
- iOS开发——高级篇——iOS中为什么block用copy属性
1. Block的声明和线程安全Block属性的声明,首先需要用copy修饰符,因为只有copy后的Block才会在堆中,栈中的Block的生命周期是和栈绑定的,可以参考之前的文章(iOS: 非ARC ...
- 服务器可用的Socket
"; IPAddress ServerIp = IPAddress.Parse("112.124.46.251"); IPEndPoint iep = new IPEnd ...
- YTU 2642: 填空题:类模板---求数组的最大值
2642: 填空题:类模板---求数组的最大值 时间限制: 1 Sec 内存限制: 128 MB 提交: 646 解决: 446 题目描述 类模板---求数组的最大值 找出一个数组中的元 ...
- iOS 证书详解
引言 关于开发证书配置(Certificates & Identifiers & Provisioning Profiles),相信做iOS开发的同学没少被折腾.对于一个iOS开发小白 ...
- JFreeChart生成饼形图(3)11 (转自 JSP开发技术大全)
FreeChart生成饼形图(3) (转自 JSP开发技术大全) 14.3 利用JFreeChart生成饼形图 通过JFreeChart插件,即可以生成普通效果的饼形图,也可以生成3D效果的饼形图:如 ...
- [luogu2620]虫洞
https://www.zybuluo.com/ysner/note/1284536 题面 给一个一维坐标系,出发点为\(0\),目标点为\(w\). 每\(1\)秒可以往后移不超过\(s\)个单位距 ...
- JQuery操作下拉框
转载自下面的链接,很有用的. http://www.cnblogs.com/yrhua/archive/2012/11/04/2753571.html 要实现这种效果: HTML代码 <scri ...