oracle_自动备份用户数据,删除N天前的旧数据(非rman,bat+vbs)

  有时数据没有实时备份恢复那么高的安全性需求,但每天 ,或者定期备份表结构

和数据依旧是很有必要的,介绍一种方法 在归档和非归档模式均可使用的自动备份方法。

预期效果是备份用户下的数据含表结构,备份文件在dmp文件下,每天晚上1点备份,

为了防止占用物理磁盘过大,自动删除两周前的旧数据,建议养成定时做备份数据有效性

检查(用导出的文件,导入空库测试)。 log文件夹下存放日志 

 1 、制作 备份bat  

@echo off

echo 正在备份pyc_ORACLE 数据库 ,请稍等……
exp userid=user/pass owner=user file=D:akdmpuser_%date:~0,4%%date:~5,2%%date:~8,2%.dmp log=D:akloguser%date:~0,4%%date:~5,2%%date:~8,2%.log buffer=67108864 statistics=none grants=n consistent=y

保存txt,重命名为bat文件

补充: 备份单表  exp pyc/pyc123456@orcl file=d: ab_pageinfo.dmp tables=(tab_pageinfo)    system是用户名,manager 是密码,myoracle 是数据库名。

 2 、制作 删除旧备份数据脚本 

删除14天前的数据备份.VBS

set fso=CreateObject("Scripting.FileSystemObject")
set ws=CreateObject("wscript.shell")
set fd=fso.getfolder("D:akdmp")
for each f in fd.files
if datediff("d",f.Datecreated,date)>14 then
f.delete(true)
end if
next
'Coded By cphmvp create date 20130711

保存txt,重命名为vbs文件

3、订制任务计划(windows平台)

原文地址:https://www.cnblogs.com/cphmvp/p/3326929.html