• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • YouClaw
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
Gavin
博客园    首页    新随笔    联系   管理    订阅  订阅

Sql

下面我们来看下如何写备份(backup)脚本:

这个是最简单的差异备份方式啦:

Backup database [DatabaseName]

to disk ='D:\db backup\test.bak'

with INIT, differential

然后建立schedule:我们期望每天运行一次,进行备份:

新建schedule,run daily,设置时间。

建立好之后我们就可以测试一下是否正确:

如果出现错误的,使用view History进行查看。

这些都是使用Job的基本知识,简单介绍一下。

检查磁盘空间Job:

下面我们来如何进行磁盘空间查询:

1.使用xp_fixeddrives 查询磁盘空间统计:

declare @FreeSpaceStat table(

      DriveLabel char(1)

      ,FreeMB int)

insert into @FreeSpaceStat exec xp_fixeddrives

2.使用EXEC master.dbo.sp_databases 得到数据库大小统计

注意:一个是以MB为单位,一个是以KB为单位,比较的时候需要转换;

一般:是以数据库大小的2倍作为剩余空间是否足够的标准;

declare  @DBSizeStat table(

      [name] nvarchar(300)

      ,[size] int

      , remark nvarchar(300))

insert into @DBSizeStat EXEC master.dbo.sp_databases

3.在需要删除的时候,使用:xp_cmdshell 执行dos命令就可以了:

Set @ DeleteString = ‘del c:\1.txt’

exec xp_cmdshell @DeleteString;

Note: 默认,xp_cmdshell 是禁用的,需要reconfigure一下,启用xp_cmdshell,如下:

EXEC master.dbo.sp_configure 'show advanced options', 1

RECONFIGURE

EXEC master.dbo.sp_configure 'xp_cmdshell', 1

RECONFIGURE

然后建立Job,设置step导入以上脚本,然后设置Schedule,搞定。

Note:以下是返回某目录下的文件,以时间排序的命令:

'dir "'+ @BackupDir + '" /b /a-d /o-d'

其中: /o-d 是最老的文件在最上面; /od就是最新的文件在返回列表的Top位置上了。

posted @ 2011-03-15 11:16  GavinAce  阅读(60)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3