下文講述 使用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”);