mssql sqlserver 使用xp_cmdShell运行时,报15281异常的处理办法


摘要:
下文讲述 使用xp_cmdshell运行时,出现消息异常的操作方法,如下所示:
实验环境:sql server 2008 R2



今天在sql查询管理器中运行xp_cmdshell命令时,出现以下错误现象:
消息 15281,级别 16,状态 1,过程 xp_cmdshell,第 1 行 SQL Server 阻止了对组件 ‘xp_cmdshell’ 的 过程 ‘sys.xp_cmdshell’ 的访问,

出现此类消息提示现象时,我们只需改变sql引擎的相关配置后,此脚本就可以正常运行。

  EXEC sp_configure N'show advanced options', N'1' 
     RECONFIGURE WITH OVERRIDE
  EXEC sp_configure N'xp_cmdshell', N'1'
    RECONFIGURE WITH OVERRIDE 
  EXEC sp_configure N'show advanced options', N'0' 
    RECONFIGURE WITH OVERRIDE


注意事项:
命令中关键字 RECONFIGURE的功能为,让配置立即生效(不用重启sql引擎)
如果进行以上设置后,xp_cmdshell还是无法运行时,此时我们需要添加xp_cmdshell所涉及的程序集,如下:
dbcc addextendedproc(“xp_cmdshell”,”xplog70.dll”);