当前位置:首页 > 数据库 > Sqlserver

SqlServer性能急剧下降,查看所有会话的状态及等待类型---Latch_Ex

      当某个数据库文件空间用尽,做自动增长的时候,同一时间点只能有一个用户人员可以做文件自动增长动作,其他任务必须等待,此时会出现Latch资源的等待。使用sp_helpdb查看业务数据库时发现:该数据库设置不合理,数据文件每次增长2M,日志文件每次增长10%,且分别设置了最大限制。修改为每次增长200M,不限制大小,系统恢复正常,问题解决。

SqlServer阻塞时的等待类型如下:

技术分享

 

顺便整理一下查看阻塞、会话状态及等待类型的SQL脚本:

            --
             查看SQL阻塞信息
            with tmp as (
    select*from master..sysprocesses t where t.blocked !=0unionallselect b.*from master..sysprocesses b
        join tmp t on b.spid = t.blocked 
)
select t.spid, t.blocked, t.status, t.waittype, t.lastwaittype, t.waitresource, t.waittime
    , DB_NAME(t.dbid) DbName, t.login_time, t.loginame, t.program_name, dc.textfrom (select spid from tmp groupby spid) s
    join master..sysprocesses t on s.spid = t.spid
    cross apply master.sys.dm_exec_sql_text(t.sql_handle) dc

-- 查看所有会话的状态、等待类型及当前正在执行SQL脚本select    t.spid, t.blocked, t.status, t.waittype, t.lastwaittype, t.waitresource, t.waittime
    , DB_NAME(t.dbid) DbName, t.login_time, t.loginame, t.program_name, dc.textfrom    master..sysprocesses t
    cross apply master.sys.dm_exec_sql_text(t.sql_handle) dc
where    t.spid >50

原文:http://www.cnblogs.com/zhaoguan_wang/p/4604270.html


【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!

相关教程推荐

其他课程推荐