2

我的网站在 IIS 下正确运行。但是工作了很长时间。它开始给出超时错误,似乎服务器忙于做其他工作。但是 SQL 服务器在我的本地主机上运行,​​除了当前应用程序之外没有服务器使用/负载。

“超时已过。在操作完成之前超时时间已过或服务器没有响应。”

完成系统重启后,我才能恢复我的工作。在这方面需要帮助。提前致谢

4

3 回答 3

1

我已经使用重新编译来解决这个问题。

EXEC sp_recompile N'myproc'
于 2014-10-16T15:49:08.920 回答
1

听起来你正在达到执行超时。如果您达到此阈值,您可能需要进行一些分析以查看某处是否存在性能瓶颈。要解决此问题,您可以在以下内容中指定执行超时web.config

<httpRuntime executionTimeout="180" /> <!-- in seconds -->

要更改 SQL Server 中的执行超时,请转到服务器属性:

http://img197.imageshack.us/img197/3152/srvrprops.png

有关更多详细信息,请参见此处:
更改 SQL Management Studio 中的 CommandTimeout

于 2012-05-07T13:26:41.477 回答
0

最后通过从过程缓存中清除执行计划解决了这个问题。

要清除计划缓存,请运行以下脚本...

SELECT plan_handle, st.text
FROM sys.dm_exec_cached_plans 
CROSS APPLY sys.dm_exec_sql_text(plan_handle) AS st
where objtype = 'Proc' AND st.[text] like '%[Enter stored procedure name here]%'


如果缓存中存在存储过程,则结果应如下所示:

执行计划查询的结果

从返回的结果中替换下面示例中的plan_handle ...

-- Remove the specific execution plan from the cache.  
DBCC FREEPROCCACHE (0x050017005CBF201940A1CE91000000000000000000000000);  
GO


更多信息在这里

于 2013-10-15T15:19:26.430 回答