我正在尝试使用'EXEC MASTER..XP_CMDSHELL'访问文件夹/目录,它适用于本地文件/文件夹,但它无法通过网络访问该文件夹。
EXEC MASTER..XP_CMDSHELL 'c:\Images' --Works fine
EXEC MASTER..XP_CMDSHELL '\\IPaddress\Images' -- returns "Access is denied."
请注意,我可以访问网络位置但不使用sql server。
Sql server在Winodws身份验证模式下运行。 Sql server正在使用'nt authority \ network service'帐户来访问远程文件夹。
此致
答案 0 :(得分:1)
如果您运行xp_cmdshell'whoami.exe',它将告诉您运行该命令的帐户。如果此帐户在网络上没有权限,您将收到您所看到的错误。
检查SQL文档以更改此帐户/权限。
答案 1 :(得分:0)
运行SQL Server的帐号是什么? 你如何连接到SQL服务器?使用Windows身份验证? 你想要“C:\ images”做什么?在资源管理器中打开文件夹? 你使用过sp_xp_cmdshell_proxy_account吗?
答案 2 :(得分:0)
当你必须把文件,如BCP结果,或者备份放在远程驱动器中时,只需将此驱动器映射到windows中不起作用,它必须映射到SQL Server上!,为此,尝试一些链接像这样:
exec xp_cmdshell'net use p:\\ Server \ Folder \ Folder \ Folder \ / Domain \ Login / Password'