存储过程:异地备份数据库文件

本文介绍了一个使用SQL Server的存储过程来实现数据库自动备份的方法。该脚本通过调用xp_cmdshell扩展存储过程来执行备份操作,并将备份文件复制到网络路径。此外,还包含了如何建立和删除网络路径映射的步骤。

USE [HMConsume_crp]
GO
/****** 对象:  StoredProcedure [dbo].[HMConsume_BackupDatabase]    脚本日期: 04/21/2010 13:34:42 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[HMConsume_BackupDatabase]   
       --@databaseName sysname
AS  
BEGIN  
       exec master..xp_cmdshell 'net use z: \\10.0.1.82\down "123" /user:huama-k.mysharepoint.huama.com.cn\administrator'
        ---建立映射

 

       SET NOCOUNT ON;  
 
       DECLARE @sqlCommand NVARCHAR(1000)  
       DECLARE @dateTime NVARCHAR(20)  
       DECLARE @fileName NVARCHAR(100)
       DECLARE @execStr NVARCHAR(1000)
 
       SELECT @dateTime = REPLACE(CONVERT(VARCHAR, GETDATE(),111),'/','') +  
       REPLACE(CONVERT(VARCHAR, GETDATE(),108),':','')   

       SET @fileName='HMConsume_crp' + @dateTime + '.BAK'

       SET @sqlCommand = 'BACKUP DATABASE ' + 'HMConsume_crp' +  
           ' TO DISK = ''D:\AutoBackDB\' + @fileName+''''   
         
       EXECUTE sp_executesql @sqlCommand
       -------备份数据库到指定目录

       SET @execStr = 'copy D:\AutoBackDB\'+@fileName+' z:'

       exec master..xp_cmdshell @execStr
       --------拷贝备份文件到网络
       
       exec master..xp_cmdshell 'net use z: /delete'
       ------删除映射
END

 

转载于:https://www.cnblogs.com/shineqiujuan/archive/2010/04/21/1717184.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值