在存储过程中使用xp_cmdshell运行某些curl命令时,速度很慢,为什么?

时间:2018-12-26 13:21:00

标签: sql sql-server tsql sql-server-2016 xp-cmdshell

这是我的代码:

SET @GETCommand = 'curl --silent -X GET -u user:password -H "Content-Type: application/json" "https://jira.com/rest/api/latest/.... > "C:\Test.txt"' 

EXEC xp_cmdshell @GETCommand

在存储过程(SP)之外运行它需要2秒钟,但是在SP中运行它可能需要2-3分钟,为什么?

请注意,我必须使用变量(@GETCommand),因为我在SET @GETCommand中包含动态变量

1 个答案:

答案 0 :(得分:0)

使用xp_cmdshell是不安全的,可能是一个安全问题。当您想 访问 从SQL Server中获取资源 时,例如,xp_cmdshell,SQL Server无法控制发生的任何问题。因此,我强烈建议您更改解决方案并创建另一个服务或应用来执行任务,相反,它是唯一的解决方案