一种通过sql server的作业调度+存储过程来建立自动备份的方法

3/7/2006来源:SQL技巧人气:19433

1.在要备份的数据上建立以下存储过程

  CREATE PROCEDURE [dbo].[过程名] AS
declare
 @filename nvarchar(100),--文件名
 @NowDay   int  --设置时间
 set @filename='F:\JXXdata'+cast(Day(GetDate()) as varchar(2))+'.dat'  --文件路径及文件名
 Set @NowDay=Day(GetDate())
 if (@NowDay>=20) or (@NowDay<=10)  --这个月的20到下个月的10要备份
 begin
   print @filename BACKUP DATABASE [数据库名()你也可以设参数] TO DISK = @filename WITH INIT , NOUNLOAD , NAME = N'XX数据备份', NOSKip , STATS = 10, NOFORMAT

end

  存储过程要调试好无误

2、进入企业管理器中->管理->sql server代理->作业,新建作业,作业名称随便取,例如:data备份,所有者选择sa,当然你也可以选择其他用户,前提是该用户有执行作业的权限;

3.在步骤中取名-选中要备份的数据库 --在命令中输入 exec('过程名')

4.在调度中选反复出现--更改--选每天--时间自己输入

5.测试完后-最后导入脚本 进入服务器

6.把SQlServer服务管理器 启用SqlServer Agent服务