咱們常常遇到本地磁盤空間不足,可是須要備份數據文件,還有如何作異地備份等,sql
如下存儲過程提供了經過網絡映射,備份數據庫的方法。shell
--網絡備份存儲過程
create proc [dbo].[myBack] @DatabaseName varchar(20),@Path varchar(100)
As
begin
exec master..xp_cmdshell 'net use \\192.168.1.xxx\DataBack "password" /user:username‘數據庫
declare @fn varchar(100),@sql varchar(200)
set @fn = @Path +(case when right(@Path,1) <>'\' then '\' else '' end)
+@DatabaseName+'_'
+convert(char(8),getdate(),112)+'_'
+replace(convert(char(8),getdate(),108),':','')
+'.bak'
set @sql = 'backup database '+@DatabaseName + ' to disk = ''' + @fn + ''''
--select @sql
exec(@sql)
end網絡