1.window下
2.每个月一号0点备份一次就行
新建一个文件,保存.bat批处理
if "%time:~0,1%"==" " (set backup_file=%date:~0,10%-0%time:~1,1%) else (set backup_file=%date:~0,10%-%time:~0,2%)
exp apps/pwd@192.168.1.206/orcl file=%backup_file%.dmp log=%backup_file%.log owner=(apps)
rar a %backup_file%.rar *.dmp *.log
del *.dmp
del *.log
需要配置环境变量:
PATH
C:\Program Files\WinRAR
计划任务可行不
1.新建个bat批处理文件,里面内容是备份脚本,很简单的 (ps:具体怎么写,自己网上找,现在的人直接给人要代码太不好了)
2.在window系统中建个计划任务,指定某个时间点启动运行该bat批处理文件即可
直接删除一年之前的数据也不是个好做法的。通常采用的方法是通过一个Schedule Job (Yearly)去archive若干年前的数据(备份到文件中或者刻录到DVD),之后才做DB中数据的物理删除。
把这个批处理加入到计划任务里面就OK了!
自动删除一年之前的数据,这个可以写个过程 或函数都行,做到ORACLE的JOB里就行了!
bak.bat文件
@echo off
set fileName=%date:~5,2%_%date:~8,2%_XXX.dmp
echo 删除上年%fileName%备份
del D:\bak\%fileName%
echo 开始备份本年%fileName%备份
exp system/manager file=D:\bak\%fileName% owner=system
echo 结束