sqlserver2008 R2数据库最大内存设置30G空间,服务器内存64G,当前数据库占用内存8个G,执行一个简单存储过程,执行却一直查询状态,没有返回结果,重启数据库,在执行这个简单的存储过程,1秒后返回结果。什么原因?每隔一段时间就会出现这种问题。数据库没有阻塞和死锁。。
------解决方案--------------------
出现的时候,先看等待信息:
SELECT TOP 10 * FROM sys.dm_os_waiting_tasks ORDER BY wait_duration_ms DESC --如果你知道对应的sessionid,直接加个where条件看看
SELECT TOP 10 * FROM sys.dm_os_wait_stats ORDER BY wait_time_ms DESC
另外如果是这个存储过程才出现这种情况,可以看看执行计划