zoukankan      html  css  js  c++  java
  • sql server创建备份计划

    对于备份计划,在sql server中微软提供了相应的功能集,通过Maintenance Plans向导可以对数据库进行相关维护工作。

    通过下图的向导,可以进行如定期备份和清除工作。

    前提是安装介质包含了sql server维护的功能,并且正常启动了sql server agent服务。而在express版本中并没有提供维护计划功能集。

    而对于express版本,我们可以通过windows的任务计划来实现备份操作。

    首先我们写一串sql语句,用作备份清理计划。

     1 --bk--
     2 declare @filename varchar(255)
     3 set @filename = N'C:BACKUP	est_' + cast(datepart(yyyy, getdate()) as varchar)
     4 + cast(datepart(mm, getdate()) as varchar) + cast(datepart(dd, getdate()) as varchar) + '.bak'
     5 
     6 backup database[test] to disk = @filename with init
     7 go
     8 
     9 --delete bk--
    10 declare @date datetime
    11 set @date = getdate() - 3
    12 
    13 execute master.dbo.xp_delete_file 0, N'C:BACKUP', N'bak', @date, 1
    14 go

    上面的sql创建了test数据库的备份,并保留了3天的备份记录。

    上面用到了一个系统存储过程xp_delete_file。介绍下这个存储过程相关参数:

    1. File Type = 0 for backup files or 1 for report files.

    2. Folder Path = The folder to delete files. The path must end with a backslash "".

    3. File Extension = This could be 'BAK' or 'TRN' or whatever you normally use.

    4. Date = The cutoff date for what files need to be deleted.

    5. Subfolder = 0 to ignore subfolders, 1 to delete files in subfolders.

    ok,创建好sql后,需要再写一个bat。调用到sqlcmd命令,相关参数可以说明可以看一下帮助文档。下面表示输入的sql脚本和吐出的执行日志。

    1 sqlcmd -i "C:ackupjob.sql" -o "C:ackuperr.txt"

    下面可以通过windows附件中的任务计划工具,将bat脚本作为执行任务,并设置执行时间周期。

    2

  • 相关阅读:
    Android客户端消息推送原理简介
    优秀程序员的十个习惯
    能让你成为更优秀程序员的10个C语言资源
    成大事必备9种能力、9种手段、9种心态
    33个优秀的HTML5应用演示 (转)
    Maven学习:Eclipse使用maven构建web项目(转)
    使用fiddler模拟http get
    TLS握手
    风暴英雄 http 302重定向 正在等待游戏模式下载完成
    page template in kentico
  • 原文地址:https://www.cnblogs.com/yuefei/p/4895424.html
Copyright © 2011-2022 走看看