因为没有建立信任关系. 用exec master.dbo.xp_cmdshell 'net use 网络路径 密码/User:用户' 建立下信任关系就可以了.
---磁盘映射exec master..xp_cmdshell 'net use z: \\xz\c$ "密码" /user:xz\administrator'/*--说明: z:是映射网络路径对应本机的盘符,与下面的备份对应 \\xz\c$是要映射的网络路径 xz\administratorxz是远程的计算机名,administrator是登陆的用户名 密码 上面指定的administrator用户的密码 --*/--2.进行数据库备份 declare @dbname varchar(256) declare @sql varchar(8000) declare cur cursor local for select name from master..sysdatabases where dbid>4 open cur fetch next from cur into @dbname while @@fetch_status=0 begin set @sql='backup database '+@dbname +' to disk=''z:\'+@dbname +'.bak'' with password=''111''' exec(@sql) fetch next from cur into @dbname end close cur deallocate cur--3.备份完成后删除映射 exec master..xp_cmdshell 'net use z: /delete'
用exec master.dbo.xp_cmdshell 'net use 网络路径 密码/User:用户'
建立下信任关系就可以了.
---磁盘映射exec master..xp_cmdshell 'net use z: \\xz\c$ "密码" /user:xz\administrator'/*--说明:
z:是映射网络路径对应本机的盘符,与下面的备份对应
\\xz\c$是要映射的网络路径
xz\administratorxz是远程的计算机名,administrator是登陆的用户名
密码 上面指定的administrator用户的密码
--*/--2.进行数据库备份
declare @dbname varchar(256)
declare @sql varchar(8000)
declare cur cursor local for
select name from master..sysdatabases where dbid>4
open cur
fetch next from cur into @dbname
while @@fetch_status=0
begin
set @sql='backup database '+@dbname
+' to disk=''z:\'+@dbname
+'.bak'' with password=''111'''
exec(@sql)
fetch next from cur into @dbname
end
close cur
deallocate cur--3.备份完成后删除映射
exec master..xp_cmdshell 'net use z: /delete'
這樣不行嗎?
我以前都是這樣搞的,隻要我在windows下面建立網絡映射,這樣就建立了信任關系了呀。
我就用ide硬盤就好了,以防萬一。
你试下就知道了.