SQL 备份数据 脚本 -添加到作业 步骤里面 可删除历史天文件

一。SqlServer自动作业备份

1、打开SQL Server Management Studio

2、启动SQL Server代理

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

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

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

-- 备份
DECLARE @createCmd NVARCHAR(500) --创建命令
DECLARE @delCmd NVARCHAR(500)  --删除命令
DECLARE @dtName NVARCHAR(500) --数据库名称
SET @dtName='DB_DongLin'
DECLARE @filePath NVARCHAR(200) --保存文件目录 必须已经建好存在的
SET @filePath='E:\Database\DongLin\'
DECLARE @saveDay int --保存的天数
SET @saveDay=10
set @createCmd = @filePath+convert(NVARCHAR(10),getdate(),112) + '.bak'
BACKUP DATABASE @dtName TO DISK = @createCmd WITH NOINIT , NOUNLOAD , NOSKIP , STATS = 10, NOFORMAT
DECLARE
@retval int,
@param1 int
EXECUTE @retval=master..xp_fileexist @createCmd, @param1 OUTPUT 
IF @param1 = 1 --文件是否备成功
BEGIN
--删除备份
--开启SQL DOS命令
EXEC sp_configure 'show advanced options', 1;RECONFIGURE;
EXEC sp_configure 'xp_cmdshell', 1;RECONFIGURE;
 
SET @delCmd = 'DEL ' +@filePath+ convert(NVARCHAR(10),getdate()-@saveDay,112)+'.bak'  

EXEC master..xp_cmdshell @delCmd   

--关闭的话执行DOS命令
EXEC sp_configure 'xp_cmdshell', 0;RECONFIGURE;
--EXEC sp_configure 'show advanced options', 0;RECONFIGURE;

END

备份路径 数据名 保存天数 可以根据自己 需求修改


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

确定,完成。

其他问题:

 

在使用sqlserver2005创建作业时,创建不了,提示

 

无法将类型为“Microsoft.SqlServer.Management.Smo.SimpleObjectKey”的对象强制转换为类型 “Microsoft.SqlServer.Management.Smo.Agent.JobObjectKey”。 (Microsoft.SqlServer.Smo)

 

通过安装SQLServer2005SP2-KB921896-x86-CHS.exe,解决我的问题。

 

在安装此SP2的过程中也遇到Integrated services和组件服务安装失败的问题,因为Distributed Transaction Coordinator本地无法启动,解决方法如下:

1、删除注册表中的键:
•HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSDTC
•HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC
•HKEY_CLASSES_ROOT\CID
2、停止MSDTC服务:net stop msdtc
3、卸载MSDTC服务:msdtc -uninstall
4、重新安装MSDTC服务:msdtc -install
5、重新启动电脑

posted @ 2013-10-09 17:19  大叔123  阅读(562)  评论(0编辑  收藏  举报