网站链接: 我爱捣鼓
当前位置: 首页 > 数据库  > 存储过程

错误SQL Server blocked access to procedure 'sys.xp_cmdshell' of component 'xp_cmdshell'

2021/2/21 17:12:56

我们经常会使用bcp命令将数据库里的数据导出到文件里exec master..xp_cmdshell bcp AdventureWorks.Sales.Currency out c:\Currency.dat -T -c假如你在执行上述语句的时候报如下错误:SQL Server blocked access to procedure sys.xp_cmdshell of component xp_cmdshell b…

我们经常会使用bcp命令将数据库里的数据导出到文件里

exec master..xp_cmdshell 'bcp AdventureWorks.Sales.Currency out c:\Currency.dat -T -c'

假如你在执行上述语句的时候报如下错误:

SQL Server blocked access to procedure 'sys.xp_cmdshell' of component 'xp_cmdshell' because this component is turned off as part of the security configuration for this server. A system administrator can enable the use of 'xp_cmdshell' by using sp_configure. For more information about enabling 'xp_cmdshell', see "Surface Area Configuration" in SQL Server Books Online.

不难看出之所以报错,是因为SQL Server阻止了访问'sys.xp_cmdshell'组件,因为该组件不是打开的状态,我们可以通过以下方法打开就行了:

-- To allow advanced options to be changed.
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


相关资讯

  • sql server如何将表数据批量导出到XML文件中?

    我们都知道在sql server将表中的数据批量导出到TXT文本文件中我们一般使用bcp命令exec master..xp_cmdshell bcp db_oa.dbo.T_User_list out c:\a.txt -c -Usa -Pxxxxx其实导出xml格式也非常简单,只用把txt扩展名换为xml即可exec master..xp_cmdshell bcp db_oa.dbo.T_U…

    2021/2/21 12:48:29