当前位置:  开发笔记 > 数据库 > 正文

尝试使用xp_cmdshell移动文件时拒绝访问

如何解决《尝试使用xp_cmdshell移动文件时拒绝访问》经验,为你挑选了1个好方法。

我试图使用一些T-SQL将一些文件从一个目录移动到另一个目录.我使用xp_cmdshell来调用move命令就像这样:

create table #output(line varchar(2000) null)
insert into #output exec master..xp_cmdshell 'move /y "D:\files\*.txt" "D:\oldfiles"'

但文件inst移动,#output表包含move命令的输出

Access is denied.
Access is denied.
Access is denied.
Access is denied.
Access is denied.
Access is denied.
        0 file(s) moved.
NULL

sql server代理帐户映射到本地管理员如果我在输入move命令时打开命令提示符

move /y "D:\files\*.txt" "D:\oldfiles"

文件移动完美

它全部发生在运行在w2k3服务器上的sql2005上.

我以本地管理员身份登录服务器



1> Tomalak..:

你能跑一个吗?

exec master..xp_cmdshell 'set username'

并告诉它返回什么?

编辑:通过OP的评论,命令运行为NETWORK SERVICE.允许NETWORK SERVICE在相关目录上解决问题.

推荐阅读
雨天是最美
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有