SQL2005EXPress自动备份

STEP1:在数据库服务器的master表中创建存储过程sp_BackupDatabase

代码如下

 1 USE [master]
 2 GO
 3 /****** 对象:  StoredProcedure [dbo].[sp_BackupDatabase]    脚本日期: 04/09/2019 09:38:30 ******/
 4 SET ANSI_NULLS ON
 5 GO
 6 SET QUOTED_IDENTIFIER ON
 7 GO
 8 -- =============================================   
 9 -- Author: RyanDing   
10 -- Create date: 2010-10-10  
11 -- Description: 备份数据库  
12 -- Parameter1: 数据库名  
13 -- Parameter2: 备份类型 F=全部, D=差异, L=日志  
14 -- =============================================   
15 CREATE PROCEDURE [dbo].[sp_BackupDatabase]    
16        @databaseName sysname, @backupType CHAR(1)   
17 AS   
18 BEGIN   
19        SET NOCOUNT ON;   
20   
21        DECLARE @sqlCommand NVARCHAR(1000)   
22        DECLARE @dateTime NVARCHAR(20)   
23   
24        SELECT @dateTime = REPLACE(CONVERT(VARCHAR, GETDATE(),111),'/','') +   
25        REPLACE(CONVERT(VARCHAR, GETDATE(),108),':','')    
26   
27        IF @backupType = 'F'   
28                SET @sqlCommand = 'BACKUP DATABASE ' + @databaseName +   
29                ' TO DISK = ''F:\SQLExpressAutoBackup\' + @databaseName + '_Full_' + @dateTime + '.BAK'''   
30           
31        IF @backupType = 'D'   
32                SET @sqlCommand = 'BACKUP DATABASE ' + @databaseName +   
33                ' TO DISK = ''F:\SQLExpressAutoBackup\' + @databaseName + '_Diff_' + @dateTime + '.BAK'' WITH DIFFERENTIAL'   
34           
35        IF @backupType = 'L'   
36                SET @sqlCommand = 'BACKUP LOG ' + @databaseName +   
37                ' TO DISK = ''F:\SQLExpressAutoBackup\' + @databaseName + '_Log_' + @dateTime + '.TRN'''   
38           
39        EXECUTE sp_executesql @sqlCommand   
40 END  
View Code

 

STEP2:创建SQL文本,代码如下:保存成backup.sql文件即可

1 exec [sp_BackupDatabase] 'WeightCommon','F'  
2 go  

 

STEP3:创建批处理文件,以下代码保存成SQLRun.bat即可

 

@ECHO OFF 

SET dbhost=MS-20161018OMFZ\SQLEXPRESS
SET dbuser=sa
SET dbpasswd=sasa
set dbName=master
SET sqlpath=%~dp0
set sqlfile=Backup.sql

osql -S %dbhost% -U %dbuser% -P %dbpasswd% -d %dbName% -i %sqlpath%%sqlfile%

ECHO 完成!
PAUSE

@ECHO Done!

效果如下:

 

转载于:https://www.cnblogs.com/topboy168/p/10675024.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值