微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

SQLServer2005数据库自动备份

文章摘自:http://www.cnblogs.com/zhangpengshou/archive/2008/09/25/1298451.html

一。sqlServer自动作业备份

1、打开sql Server Management Studio

2、启动sql Server代理

3、点击作业->新建作业

4、"常规"中输入作业的名称

5、新建步骤,类型选T-sql,在下面的命令中输入下面语句

DECLARE @strPath NVARCHAR(200)
set @strPath = convert(NVARCHAR(19),getdate(),120)
set @strPath = REPLACE(@strPath,':','.')
set @strPath = 'D:/bak/' + 'databasename'+@strPath + '.bak'
BACKUP DATABASE [databasename] TO disK = @strPath WITH NOINIT,NOUNLOAD,NOSKIP,STATS = 10,NOFORMAT

(D:/bak/改为自己的备份路径,databasename修改为想备份的数据库名称

6、添加计划,设置频率,时间等。

确定,完成。

以上信息信息来自百度空间:http://hi.baidu.com/_zhangchengfeng/blog/item/5c13c118a96657b14aedbc49.html

二。使用sql2005的维护计划自动备份(不推荐)

sql2005的维护计划里面自带了备份数据库任务,但不会自动按日期命名,不方便,下面的方法是以存储过程来解决的。

要用sql2005的维护计划功能首先要确认sql Server Agent服务是在启动状态,然后打开sql Server Management Studio,展开对象资源管理器里的“管理”,右击维护计划选择新建维护计划,为维护计划命名,如:TestDB_Backup,选择认的子计划 “Subplan_1 ”并点击上方的子计划设置按钮来设置子计划执行方式和时间:

子计划设置

出现设置界面,设置每天3点执行一次,如图:

2008-03-03_122944.jpg

确定后保存一下,然后新建一个查询页,开始创建存储过程,代码如下:

      USE [TestDB]
      GO
      SET ANSI_NULLS ON
      GO
      SET QUOTED_IDENTIFIER ON
      GO
      CREATE PROCEDURE [BackupDatabase](@FolderPath varchar(500))
      as
      DECLARE @FullPath varchar(1000)
      set @FullPath = @FolderPath+ ‘TestDB_’+convert(VARCHAR(4),year(getdate()))+right( ‘0′+convert(VARCHAR(2),MONTH(getdate())),2)+right(’0′+convert(VARCHAR(2),DAY(getdate())),2)+ ‘.bak’
      backup database [TestDB] to disk=@FullPath WITH INIT
      return

 

设置完毕,切换回维护计划设置页面,在左边的工具箱中拖入一个“执行T-sql语句任务”:

 

2008-03-03_123446.jpg

双击拖入后的“执行T-sql语句任务”,输入执行存储过程的语句来完成每天的自动备份工作,代码如下:

      use [TestDB]
      exec BackupDatabase ‘E:/sqlData/TestDB/’

确定后保存该维护计划即可。为了保证该维护计划不会出现问题,可以先执行一下以上语句测试一下。

sql2000下使用此方法sql2005大同小异。

总结了一下:第二种方法太过于繁琐,所以不推荐使用

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐