2012年3月8日 星期四
sql 異地備份所有資料庫
declare @disk varchar(200)
select @disk='\\192.168.0.1\database'
declare backdatabase cursor for
select name from sysdatabases where dbid>6 --所有用户表 dbid自己随时调整
declare @name varchar(50)
open backdatabase
fetch next from backdatabase
into @name
--建立连接
declare @con varchar(500)
select @con='net use '+@disk+' pass /user:192.168.0.1\userName'
exec master..xp_cmdshell @con
while @@fetch_status=0
begin
--建立目录
declare @str varchar(500)
select @str='if not exist '+@disk+'\'+@name+' mkdir '+@disk+'\'+@name
exec master..xp_cmdshell @str
--备份文件
declare @sql varchar(500)
select @sql=@disk+'\'+@name+'\'+@name+'_backup_'+replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-','_'),' ','_'),':','') +'.bak'
backup database @name to disk=@sql
fetch next from backdatabase into @name
end
close backdatabase
deallocate backdatabase
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言