当前位置: 代码迷 >> Sql Server >> SQL2008 没法去执行 xp_cmdshell 调用命令
  详细解决方案

SQL2008 没法去执行 xp_cmdshell 调用命令

热度:984   发布时间:2016-04-24 09:05:49.0
SQL2008 无法去执行 xp_cmdshell 调用命令
WINDOWS  2008  SERVER R2          SQL 2008 SERVER

f需要用到  xp_cmdshell  调用DOS命令 ,  执行exec master..xp_cmdshell 'dir  c:\'  
就出现以下错误:
       在执行 xp_cmdshell 的过程中出错。调用 'CreateProcess' 失败,错误代码: '5'

通过在SQL里 执行
EXEC sp_configure 'show advanced options', 1;RECONFIGURE;EXEC sp_configure 'xp_cmdshell', 1;RECONFIGURE

后再 执行   exec master..xp_cmdshell 'dir  c:\'  

还是出现同样的错误 , 求解!


  在执行 xp_cmdshell 的过程中出错。调用 'CreateProcess' 失败,错误代码: '5'
  在执行 xp_cmdshell 的过程中出错。调用 'CreateProcess' 失败,错误代码: '5'

  在执行 xp_cmdshell 的过程中出错。调用 'CreateProcess' 失败,错误代码: '5'

------解决思路----------------------
EXEC sp_configure 'show advanced options', 1
GO
-- To update the currently configured value for advanced options.
RECONFIGURE
GO
-- To enable the feature.
EXEC sp_configure 'xp_cmdshell', 1
GO
-- To update the currently configured value for this feature.
RECONFIGURE
GO
先加上GO提交批处理的方式

然后 
exec master..xp_cmdshell 'echo 1'
试下
------解决思路----------------------
错误 5 是没有权限,我之前以为是dir
看来,你看下
C:\WINDOWS\system32 应该是这个文件夹下,看下cmd.exe的NTFS权限

或者尝试以以管理身份的方式  运行SSMS
------解决思路----------------------
错误码:5一般是权限问题。检查一下你sqlserver的启动账号是否有相应windows的权限
------解决思路----------------------
引用:
Quote: 引用:

错误码:5一般是权限问题。检查一下你sqlserver的启动账号是否有相应windows的权限


能不能说一下具体的操作步骤?  

看看sqlserver服务的启动账号是什么,建议改成有administrator权限的账号;