Dav*_*.ca 6 sql sql-server-2005
有没有办法使用存储过程映射到网络驱动器?我试过了:
xp_cmdshell 'net use Q: [shared_network_drive] [pwd] /user:[username]'
Run Code Online (Sandbox Code Playgroud)
但是我得到了一个错误的说法
'System error 1312 has occurred.'
'A specified logon session does not exist. It may already have been terminated.'
Run Code Online (Sandbox Code Playgroud)
但是,当我在与SQL Server计算机相同的框中的cmd控制台中运行相同的命令时,根本没有问题.看起来SQL进程确实传递了正确的登录凭据信息.有什么方法可以通过SQL SP来实现吗?
Mar*_*tin 10
在另一个论坛中,有人通过指定包含其域名的用户名来发布有关如何解决System error 1312 has occurred.问题的提示,如下所示:
net use Q: \\[host]\[folder] [pwd] /user:[host]\[username]
Run Code Online (Sandbox Code Playgroud)
我试过了,它对我有用.
您是否为 xp_cmdshell 设置了代理帐户?如果您不是 sysadmin 的成员,则需要代理帐户。xp_cmdshell 和 sp_xp_cmdshell_proxy_account 的文档将详细解释它,但请尝试执行以下命令:
EXEC sp_xp_cmdshell_proxy_account 'DOMAIN\Username', 'password'
Run Code Online (Sandbox Code Playgroud)
当然,请将用户和密码信息替换为您希望在其下执行的网络上的帐户信息。
警告:xp_cmdshell 可能是一个巨大的安全漏洞。至少确保您使用的代理帐户的安全性非常有限。不要使用任何类型的管理员帐户,也不要使用实际用户的帐户。
| 归档时间: |
|
| 查看次数: |
8040 次 |
| 最近记录: |