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

时间:2023-12-14 16:28:56

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

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

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

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

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

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

1 、制作 备份bat

@echo off

echo 正在备份pyc_ORACLE 数据库 ,请稍等……
exp userid=user/pass owner=user file=D:\bak\dmp\user_%date:~0,4%%date:~5,2%%date:~8,2%.dmp log=D:\bak\log\user%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:\tab_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:\bak\dmp")
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平台)

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