当前位置: 首页 > 图文教程 > 数据库 > MSSQL > 通过作业调度建立SQL Server的自动备份

MSSQL
Sql语句密码验证的安全漏洞
SQL Server的Inner Join及Outer Join
恢复系统数据库
Sql2005如何用dtexec运行ssis(DTS)包
监测你的SQL SERVER--让瓶颈暴露
解读SQL Server2008的新语句MERGE
如何有效防止Java程序源码被人偷窥?
精彩的表数据排序分组
怎样做sql server数据库的还原
SQL Server 查询分析器快捷键集合
初探 SQL Server 2008 “Katmai”
剖析SQL Server2005 SQLCLR代码安全性
SQL Server2005的XML数据类型之基础篇
探讨SQL Server 2005.NET CLR编程
SQL Server与Oracle并行访问的本质区别
让你的MySQL数据库彻底与中文联姻
SQL Server 2005 CE软件环境需求
透视MySQL数据库之更新语句
深入浅出SQL之左连接、右连接和全连接
深入浅出SQL教程之Group by和Having

MSSQL 中的 通过作业调度建立SQL Server的自动备份


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 120 ::
收藏到网摘: n/a

SQL Server的作业调度来建立自动备份的方法

◆1、进入企业管理器中->管理->sql server代理->作业;

◆2、新建作业,作业名称随便取,例如:data备份,所有者选择sa,当然你也可以选择其他用户,前提是该用户有执行作业的权限;

◆3、点击步骤标签,进入步骤面板。新建步骤,步骤名可以随便填写,如步骤1,类型和数据库默认,不需要修改。命令中写入以下语句:

BACKUP DATABASE [数据库名] TO DISK = N'F:\data\数据库备份' WITH NOINIT , NOUNLOAD , NAME = N'数据库 备份', NOSKIP , STATS = 10, NOFORMAT

注意:需要修改的地方,数据库名,DISK=(这里需要填写路径和你的数据库备份的名称)后面的Name=可以随便填写。

◆4、点击调度标签,进入调度面板,新建调度,名称随便填写,选择反复出现,点更改可以选择你想要执行任务的随意调度。如每天,每2

天,每星期,每月等。根据需要自己设置;

◆5、确定后,不要忘记一件事情,在你刚才建立的工作上点右键,启动工作,如果你的工作没有问题,将会提示执行成功,并有相对应的备
份文件在你的磁盘上出现;

◆6、还有一个重要的问题就是你的sql server agent服务器已经启动。

如果我们需要根据每天的日期来生成一个新的备份,以便我们区别备份文件。这时,我们需要修改一下刚才的sql语句。参考实例:

declare @filename nvarchar(100)

set @filename='E:\data_Backup\BIS_data_backup_'+convert(char(10),getdate(),112)+'.bak'

print @filename

BACKUP DATABASE [BIS] TO DISK = @filename WITH NOINIT, NOUNLOAD, NAME = N'BIS_data_backup', NOSKIP , STATS = 10, NOFORMAT

或者按如下写法:

DECLARE @BACKFILENAME VARCHAR(200)

DECLARE @DATE CHAR(10)

DECLARE @FILENAME VARCHAR(200)

DECLARE @NAME VARCHAR(200)

SET @DATE=CONVERT(CHAR(10),GETDATE(),120)

SET @FILENAME='E:\data_Backup\'

SET @BACKFILENAME=@FILENAME+@DATE

SET @NAME='BIS_data_backup'

BACKUP DATABASE [BIS]

TO DISK = @BACKFILENAME WITH INIT , NOUNLOAD , NAME = @NAME, NOSKIP , STATS = 10, NOFORMAT

或者:

EXECUTE master.dbo.xp_sqlmaint N'-PlanID 1FAEE7FD-F0CC-4E9C-8100-FC1F9AF39063 -WriteHistory -VrfyBackup -BkUpMedia DISK

-BkUpDB "E:\data_backup" -BkExt "BAK"'

举例:

declare @filename nvarchar(100)

set @filename='E:\data_Backup\BIS_data_backup_'+replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),'

',''),':','')+'.bak'

print @filename

BACKUP DATABASE [BIS] TO DISK = @filename WITH NOINIT, NOUNLOAD, NAME = N'BIS_data_backup', NOSKIP , STATS = 10, NOFORMAT

时间戳不带秒:

substring(replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':',''),1,12 )