Loading

12、windows定时备份数据库


12.1、删除指定目录中的内容:

del /Q E:\DATABAK\*

copy 1.txt bak\a.txt

12.2、可用的备份计划:

1、脚本:

BakScripts

@echo off

REM ------------------------------------------------------------------------------

REM author liuchang by 2019/4/30

REM 定时备份数据库,本地保留10天;

REM ------------------------------------------------------------------------------

REM ORACLE转存储路径;

set ExpDir="BHL_DB_BACK"

REM 设置备份时间格式,小时应该在两位数时备份,不然会有时间格式问题;

set dat=%date:~0,4%_%date:~5,2%_%date:~8,2%-%time:~0,2%_%time:~3,2%_%time:~6,2%

REM 指定待删除文件的存放路径;

set SrcDir="D:\BHL_DB_BACK"

REM 指定保留天数;

set DaysAgo="-10"

REM 备份升级版馆系统;

expdp damsup/damsup@orcl directory=%ExpDir% dumpfile=DAMSUP-%dat%.DMP logfile=DAMSUP-%dat%.log schemas=damsup

REM 备份触摸屏系统;

expdp cmp/cmp@orcl directory=%ExpDir% dumpfile=CMP-%dat%.DMP logfile=CMP-%dat%.log schemas=cmp

REM 备份电子阅览室系统;

expdp errms/errms@orcl directory=%ExpDir% dumpfile=ERRMS-%dat%.DMP logfile=ERRMS-%dat%.log schemas=errms

REM 备份秘密文件馆系统;

expdp damsfinal/damsfinal@orcl directory=%ExpDir% dumpfile=DAMSFINAL-%dat%.DMP logfile=DAMSFINAL-%dat%.log schemas=damsfinal

REM 备份数字化加工系统;

expdp adpp/adpp@orcl directory=%ExpDir% dumpfile=ADPP-%dat%.DMP logfile=ADPP-%dat%.log schemas=adpp

forfiles /p %SrcDir% /s /d %DaysAgo% /c "cmd /c del @path"

2、参数说明:

C:\Users\lc>forfiles /?

FORFILES [/P pathname] [/M searchmask] [/S]

[/C command] [/D [+ | -] {yyyy/MM/dd | dd}]

描述:

选择一个文件(或一组文件)并在那个文件上

执行一个命令。这有助于批处理作业。

参数列表:

/P pathname 表示开始搜索的路径。默认文件夹是当前工作的

目录 (.)。

/M searchmask 根据搜索掩码搜索文件。默认搜索掩码是 '*'。

/S 指导 forfiles 递归到子目录。像 "DIR /S"。

/C command 表示为每个文件执行的命令。命令字符串应该

用双引号括起来。

默认命令是 "cmd /c echo @file"。下列变量

可以用在命令字符串中:

@file - 返回文件名。

@fname - 返回不带扩展名的文件名。

@ext - 只返回文件的扩展名。

@path - 返回文件的完整路径。

@relpath - 返回文件的相对路径。

@isdir - 如果文件类型是目录,返回 "TRUE";

如果是文件,返回 "FALSE"。

@fsize - 以字节为单位返回文件大小。

@fdate - 返回文件上一次修改的日期。

@ftime - 返回文件上一次修改的时间。

要在命令行包括特殊字符,字符请以 0xHH

形式使用十六进制代码(例如,0x09 为 tab)。

内部 CMD.exe 命令前面应以 "cmd /c" 开始。

/D date 选择文件,其上一次修改日期大于或等于 (+),

或者小于或等于 (-) 用 "yyyy/MM/dd" 格式指定的日期;

或选择文件,其上一次修改日期大于或等于 (+)

当前日期加 "dd" 天,或者小于或等于 (-) 当前

日期减 "dd" 天。有效的 "dd" 天数可以是

0 - 32768 范围内的任何数字。如果没有指定,

"+" 被当作默认符号。

/? 显示此帮助消息。


示例:

FORFILES /?

FORFILES

FORFILES /P C:\WINDOWS /S /M DNS*.*

FORFILES /S /M *.txt /C "cmd /c type @file | more"

FORFILES /P C:\ /S /M *.bat

FORFILES /D -30 /M *.exe

/C "cmd /c echo @path 0x09 在 30 前就被更改。"

FORFILES /D 2001/01/01

/C "cmd /c echo @fname 在 2001年1月1日就是新的。"

FORFILES /D +2019/4/30 /C "cmd /c echo @fname 今天是新的。"

FORFILES /M *.exe /D +1

FORFILES /S /M *.doc /C "cmd /c echo @fsize"

FORFILES /M *.txt /C "cmd /c if @isdir==FALSE notepad.exe @file"

12.3、定时任务设置:

1、

2、

3、

4、

5、

6、剩下的‘条件’和‘设置’配置保持默认的设置即可:

(1)条件:

(2)设置:

posted @ 2020-02-16 10:05  云起时。  阅读(284)  评论(0编辑  收藏  举报