SQL Server阻止了对组件xp_cmdshell过程的解决方案

时间:2023-03-08 17:21:07

使用SQL tools连接sqlserver时候出现以下问题:

SQL Server阻止了对组件xp_cmdshell过程的解决方案
错误描述:SQL Server阻止了对组件‘xp_cmdshell’的过程‘sys.xp_cmdshell’的访问。因为此组件已作为此服务嚣安全配置的一部分而被关闭。系统管理员可以通过使用sp_configure启用‘xp_cmdshell’。有关启用‘xp_cmdshell’的详细信息,请参阅sQL帮助文件。

【分析】:
查询网络资料以及SQL帮助可知,xp_cmdshell可以让系统管理员以操作系统命令行解释器的方式执行给定的命令字符串,并以文本行方式返回任何输出,是一个功能非常强大的扩展存贮过程。一般情况下,xp_cmdshell对管理员来说也是不必要的,xp_cmdshell的消除不会对Server造成任何影响。在执行某些SQL的操作时,SQL系统需要此服务开启,如本例中的新建账套的操作。
【处理】:
<SPAN STYLE28" style="LINE-HEIGHT: 150%">1、在查询分析器中执行命令
通过查询分析器,选择Master数据库,然后执行以下SQL内容:
sp_configure 'show advanced options',1
reconfigure
go

sp_configure 'xp_cmdshell',1
reconfigure
go