不需要保留那么多,按公司要求只需要保留一个星期的即可。 
1.那么有什么方法自动删除7天以前备份的*.log文件呢? 
2.服务器过多,不可能一一手动创建,有没有自动完成这个创建计划任务的批处理呢? 
首先要解决的是自动删除7天以前备份的log文件,然后创建一个可以自动创建一个每 
周指定日期指定时间运行一次该自动删除的批处理

一:删除7天以前备份的文件 
命令 
FORFILES [/P pathname] [/M searchmask] [/S]
         [/C command] [/D [+ | -] {yyyy-MM-dd | dd}]

方法1: 
描述:可以删除7天以前的后缀名为log的日志文件。如今天是6.29,那么会删除6.22 
号以前创建的文件。不会删除到回收站。 
指定路径为要删除的文件夹路径,该批处理可以放在任意文件夹下。 
forfiles /p D:/aizzw/LOG /m *.log -d -7 /c "cmd /c del /f @path" 
参数解释: 
这里的/p 指的是要删除的备份文件路径 
        /m 指的是要匹配的字符,通配符为*号,后缀名可以根据实际情况修改。 
如zzw*.log;*.bak;*.txt
-d 指的是日期,“-d -7”指的是从但前日期当前日期往前减7天。 
/c 指的是执行命令 
@path 返回文件完整路径
方法2: 
描述:可以删除7天以前的后缀名为log的日志文件。 
不需要指定路径,必须放在要删除日志的文件下。删除当前文件夹下的匹配文件。 
forfiles /m *.log -d -7 /c "cmd /c del /f @path" 
以上批处理已经在windows 2003的虚拟机上测试通过

方法3:
为网友提供,可适用于xp,2000,而forfiles默认只有2003以上的系统才有。

::删除F:/文件备份里的 7天前的txt文件
::被删除的文件日期以文件创建日期为主
@echo off
::取7天之前的日期.
>deldata_zw.zhu.vbs echo wscript.echo dateadd("d",-7,date)
for /f "tokens=1,2,3* delims=-" %%i in ('cscript /nologo deldata_zw.zhu.vbs') do (
set y=%%i
set m=%%j
set d=%%k
)
if %m% LSS 10 set m=0%m%
if %d% LSS 10 set d=0%d%
set rq=%y%-%m%-%d%
echo 注意:即将删除 %rq% 以前建立的文件
pause
::判断文件
for /f "skip=4 delims=" %%i in ('dir/tc F:/TEST/*.log') do call :w "%%i"
del deldata_zw.zhu.vbs
goto :eof
:w
for /f "tokens=4 delims= " %%a in (%1) do set str=%%a
set var=%1
set num=%var:~1,10%
if %num% lss %rq% del /q F:/TEST/%str%

二:自动创建每周运行一次的计划任务 
创建计划任务可用at,schtasks命令,schtasks提供了很多参数 
命令schtasks 
SCHTASKS /Create [/S system [/U username [/P [password]]]]
    [/RU username [/RP password]] /SC schedule [/MO modifier] [/D day]
    [/M months] [/I idletime] /TN taskname /TR taskrun [/ST starttime]
    [/RI interval] [ {/ET endtime | /DU duration} [/K] ]
    [/SD startdate] [/ED enddate] [/IT] [/Z] [/F] 
方法: 
@echo off
schtasks /create /tn "Del-7_log" /ru system /tr D:/aizzw/del-7.bat /sc 
weekly /d mon /st 01:00
start %systemroot%/tasks
echo 创建成功,请检查...
pause
del /f Create.bat
参数解释: 
schtasks /create 指的是创建计划任务 
/tn 指定计划任务的名称 
/ru 指定运行该批处理的账号,如果去掉该参数则默认为当前账户运行,会提示输入密码。 
一个计划任务所用的账号如果密码变动后该批处理就不再会运行成功 
所以我这里使用系统账号system,密码就省略不写。
/rp   指定账号的密码 
/tr 指定程序所在路径,这里为指定要执行的批处理存放路径。 
/sc 为指定运行的周期 
/d 为日期.这里mon为英文单词缩写,周一 
/st 为运行时间 
start %systemroot%/tasks 这一句只是为了弹出计划任务窗口查看创建成功与否 
del /f Create.bat 为创建完成后自动删除创建该计划任务的批处理 
schtasks命令详细解释可以参见微软的 
http://technet.microsoft.com/zh-cn/cc772785 (WS.10).aspx#BKMK_create 
附件中有我实际操作的批处理供下载

oracle 定时删除3天前的备份数据的更多相关文章

  1. mysql定时删除当前时间前分钟的数据

    mysql定时删除当前时间前分钟的数据 2013-01-31      0个评论       作者:上官车月 收藏    我要投稿 mysql定时删除当前时间前分钟的数据   Sql代码  www.2 ...

  2. sql server 批量备份数据库及删除N天前的备份数据

    很多时候,我们都需要将数据库进行备份,当服务器上数据库较多时,不可能一个数据库创建一个定时任务进行备份,这时,就需要进行批量的数据库备份操作,好了,废话不多说,具体实现语句如下: 1 2 3 4 5 ...

  3. Linux下通过脚本自动备份Oracle数据库并删除指定天数前的备份

    说明: Oracle数据库服务器操作系统:CentOSIP:192.168.0.198端口:1521SID:orclOracle数据库版本:Oracle11gR2 具体操作: 1.root用户登录服务 ...

  4. Linux下自动备份Oracle数据库并删除指定天数前的备份

    说明: Oracle数据库服务器 操作系统:CentOS IP:192.168.0.198 端口:1521 SID:orcl Oracle数据库版本:Oracle11gR2 具体操作: 1.root用 ...

  5. Windows环境下Oracle数据库的自动备份脚本自动删除30天前的备份

    @echo off echo ================================================ echo Windows环境下Oracle数据库的自动备份脚本 echo ...

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

    有时数据没有实时备份恢复那么高的安全性需求,但每天 ,或者定期备份表结构 和数据依旧是很有必要的,介绍一种方法 在归档和非归档模式均可使用的自动备份方法. 预期效果是备份用户下的数据含表结构,备份文件 ...

  7. SqlServer批量备份多个数据库且删除3天前的备份

    /******************************************* * 批量备份数据库且删除3天前的备份 ************************************ ...

  8. Debian下自动备份文件并上传到远程FTP服务器且删除指定日期前的备份Shell脚本

    说明:  1.备份目录/home/osyunwei下面所有的文件到/home/osyunweibak里面,并且保存为osyunwei20120701.tar.gz的压缩文件格式(2012_07_01是 ...

  9. MSSQL Server2012备份所有数据库到网络共享盘上面,并自动删除几天前的备份。。

    --要备份到哪一服务的IP网络位置,要提前打开文件夹共享.这里还要输入用户名和密码,下面这一行是建立共享 exec master..xp_cmdshell 'net use \\192.168.8.1 ...

随机推荐

  1. Doing Homework again(杭电1789)

    Doing Homework again Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Oth ...

  2. hibernate查询之后用el表达式取值时遇到的问题

    String juniorApprovalUserHql = "select c.id,c.username from UserInfo c left join c.userRole whe ...

  3. linux mount-umount命令常用记录

    每次挂在u盘都忘记,这次记录下. umount命令: 必杀:umount -l /dev/sda1 (有时候卸载不能卸,加-l(不是1,是小写字母l)参数,表示在设备不忙时卸载设备,就可成功卸载设备) ...

  4. Ubuntu17.10 Install Docker-ce

    官网目前的安装步骤在最新版本的Ubuntu17.10 上会提示没有安装源,下面是针对17.10 安装步骤: 参考资料 sudo apt-get update sudo apt-get install ...

  5. redis常用数据类型 HyperLoglog

    1.HyperLoglog简介 HyperLoglog是redis新支持的两种类型中的另外一种(上一种是位图类型Bitmaps).主要适用场景是海量数据的计算.特点是速度快.占用空间小. 同样是用于计 ...

  6. 我的第二个java程序 循环

    public class Test {//类 public Test (int num){//构造方法,和类同名,无返回值,接收传参并定义传参的类型,大小写敏感 int x = 10;//局部变量,定 ...

  7. Hibernate通过one-to-one元素的一对一映射

    正如我们在前面的例子中讨论过的,在hibernate中执行一对一映射有两种方法: 通过many-to-one元素 通过one-to-one元素 这里,我们将通过one-to-one元素进行一对一的映射 ...

  8. java httpSession 设置超时时间

    1.设置过期时间方式一:在tomcat/conf/web.xml下加入一下内容 <session-config> <session-timeout>90</session ...

  9. 理解和使用WPF 验证机制(值得推荐)

    首先建立一个demo用以学习和实验WPF Data Validation机制.创建一个数据实体类: public class Employee { public string Name { get;  ...

  10. PYTHON -创建 表 和 插入 数据

    import sqlite3 conn = sqlite3.connect('y_user_data2.db') cursor = conn.cursor() #create tablecursor. ...