1. -----sqlserver 数据异地备份 默认删除 七天前的数据
  2. -----该代码可配置成SQLServer作业里做调度,或者配置成任务计划进行执行
  3. ----挂载异地盘符
  4. exec master..xp_cmdshell
  5. 'net use w: "\\172.16.30.34\D$" "726" "/user:172.16.30.34\administrator"', no_output
  6. /*--说明:
  7. w: 是映射网络路径对应本机的盘符,与下面的备份对应
  8. \\172.16.30.34\D$ 是要映射的网络路径
  9. 172.16.30.34\administrator
  10. 172.16.30.34是远程的计算机名,administrator是登陆的用户名
  11. 726 上面指定的administrator用户的密码
  12. --*/
  13. go
  14.  
  15. go
  16.  
  17. -----用游标:
  18. declare @s nvarchar(200),@del nvarchar(200)
  19. select @s='',@del=''
  20.  
  21. declare datebak cursor for
  22. select
  23. [bak]='backup database '+quotename(Name)+' to disk =''w:'+Name+'_'+convert(varchar(8),getdate(),112)+'.bak'' with init',
  24. -----自动删除七天前的备份文件
  25. [del]='exec master..xp_cmdshell '' del w:'+Name+'_'+convert(varchar(8),getdate()-7,112)+'.bak'', no_output'
  26. from master..sysdatabases where dbid=37 --这里查询出需要备份的数据库,可以一次性备份多个数据库
  27. open datebak
  28.  
  29. fetch next from datebak into @s,@del
  30. while @@fetch_status=0
  31. begin
  32. ----对于要删除的备份文件进行一场捕获(解决第一次部分的时候,执行失败的情况)
  33. begin try
  34. exec (@del)
  35. end try
  36. begin catch
  37. if @@TRANCOUNT >0
  38. BEGIN
  39. print @del
  40. END
  41. end catch
  42. exec(@s)
  43. fetch next from datebak into @s,@del
  44. end
  45. close datebak
  46. deallocate datebak
  47. go
  48. --删除映射
  49. exec master..xp_cmdshell 'net use w: /delete'
  50.  
  51. go
  52.   

SqlServer 自动备份、自动删除7天前备份的更多相关文章

  1. shell 自动删除n天前备份

    Linux自动删除n天前备份Linux是一个很能自动产生文件的系统,日志.邮件.备份等.因此需要设置让系统定时清理一些不需要的文件.语句写法:     find 对应目录 -mtime +天数 -na ...

  2. oracle定时备份与删除N天前备份文件

    oracle定时备份数据库,以及删除7天前备份的数据. 1.创建存放备份目录: mkdir /home/oracle/data_backup mkdir /home/oracle/log_backup ...

  3. liunx定时备份mongo数据库并实现自动删除N天前备份

    1.脚本文件: #!/bin/sh # dump 命令执行路径,根据mongodb安装路径而定 #!/bin/sh # dump 命令执行路径,根据mongodb安装路径而定 /bin/mongodu ...

  4. [Irving] SQL 2005/SQL 2008 备份数据库并自动删除N天前备份的脚本

    以下为SQL脚本,本人以执行计划来调用,所以改成了执行命令,大家可根据自己需要改为存储过程使用 )='E:\MsBackUp\SqlAutoBackup\' --备份路径; --备份类型为全备,1为差 ...

  5. 在Oracle中实现每日表备份并删除7天前的备份表

    不用闪回技术,因为业务想眼睁睁的看到备份表,而不是让DBA搞一通之后,才能看到备份数据表 OK,那好办了,写个存储过程解决你的需求,每天建个新表,把数据备份进去,业务人员可以看到这些每天的备份表 然后 ...

  6. Window bat expdp 定时任务逻辑备份 定时删除N天前的旧文件

    点击进入:Linux shell crontab expdp 定时任务逻辑备份 定时删除旧文件 首先建一个备份数据库用批处理文件,内容如下: rem expdp sz set sz_file=SZ_% ...

  7. Linux自动删除n天前备份

    Linux是一个很能自动产生文件的系统,日志.邮件.备份等.因此需要设置让系统定时清理一些不需要的文件. 语句写法: find 对应目录 -mtime +天数 -name "文件名" ...

  8. crontab自动备份MySQL数据库并删除5天前备份

    1.创建备份文件夹 //备份数据库文件夹 mkdir /data/backmysql //crontab日志 mkdir /data/logs   2.创建脚本文件 db_user="xxx ...

  9. Linux shell crontab expdp 定时任务逻辑备份 定时删除旧文件

    点击进入:Window bat expdp 定时任务逻辑备份 定时删除N天前的旧文件 创建sh脚本 [oracle@localhost ~]$ vi logicbackup.sh 添加脚本内容 #!/ ...

随机推荐

  1. 在Windows环境中安装并使用kafka

    [TOC] 安装部署 安装部署Java 下载需要安装的软件,下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jre8-down ...

  2. img的onerror事件

    使用场景 其实on error使用上是比较简单的. 当我们网站上出现了无效图片,而我们希望用友好的方式告诉用户,而不是显示红叉叉. w3c上解释的 定义和用法: onerror 事件会在文档或图像加载 ...

  3. fork安全的gettid高效实现

    进程有id,可以通过getpid()获得,线程也有id,但是glibc没有提供封装.需要自己发出系统调用.在关键路径,系统调用还是对性能有影响的.因此我们可以想到类似glibc对getpid做的cac ...

  4. EventBus 事件总线 案例

    简介 地址:https://github.com/greenrobot/EventBus EventBus是一个[发布 / 订阅]的事件总线.简单点说,就是两人[约定]好怎么通信,一人发布消息,另外一 ...

  5. ORA-19502: write error on file "/u01/app/oracle/oradata/standby/system01.dbf", blockno 40321 (blocksize=8192)【error收集】

    在RMAN备份中,出现了一个问题,就是出现坏块了. ORA-: write error on file (blocksize=) ORA-: File I/O error Linux Error: : ...

  6. swift 类 结构体 作为参数 以及可变参数

    Class class Person{ var age = 22, name = "frank" func growolder() { self.age++ //++ 要跟住 不要 ...

  7. 【转】深入理解Java内存模型(六)——final

    与前面介绍的锁和volatile相比较,对final域的读和写更像是普通的变量访问.对于final域,编译器和处理器要遵守两个重排序规则: 在构造函数内对一个final域的写入,与随后把这个被构造对象 ...

  8. dom方法读取xml(不常用)

    Book.java package com.xml.demo; public class Book { private int id; private String name; private Flo ...

  9. 武汉科技大学ACM :1001: 华科版C语言程序设计教程(第二版)课后习题3.12

    Problem Description 输入n,输出对应的边长为n的空心正六边形. 为方便看图,样例中点 '.' 表示空格,打印图形时请打印空格而非小圆点. Input 边长n.(n<=20) ...

  10. Spring4.0学习笔记(2) —— 自动装配

    Spring IOC 容器可以自动装配Bean,需要做的是在<bean>的autowire属性里指定自动装配的模式 1)byType 根据类型自动装配,若IOC 容器中有多个目标Bean类 ...