相关疑难解决方法(0)

DBA 阻止查询电子邮件警报

有没有人有一个很好的 Sql Alert 来发送电子邮件通知,当查询阻塞发生超过几分钟时?我知道如何编写自己的代码,但是在 Internet 上似乎是一个很好的代码库。如果可能,请在没有事件通知的情况下给出答案。

我喜欢下面这个: 阻止发生时的电子邮件通知

我避免使用这些,因为它们使用我听说已被弃用的 sys.processes: 自动检测阻塞

发生阻止时的电子邮件通知

这与第一个类似,但没有那么多细节: 查找长时间运行的查询

在实施之前尝试找到好的解决方案或共识。随意发送解决方案或在下面编辑一个。

谢谢,

注意:下面的一个似乎有一个不必要的临时表步骤,可能可以消除,只需一封 sql 电子邮件。

*/
 SET NOCOUNT ON

-- Checked for currently running queries by putting data in temp table
SELECT s.session_id
    ,r.STATUS
    ,r.blocking_session_id
    ,r.wait_type
    ,wait_resource
    ,r.wait_time / (1000.0) 'WaitSec'
    ,r.cpu_time
    ,r.logical_reads
    ,r.reads
    ,r.writes
    ,r.total_elapsed_time / (1000.0) 'ElapsSec'
    ,Substring(st.TEXT, (r.statement_start_offset / 2) + 1, (
            (
                CASE r.statement_end_offset
                    WHEN - 1
                        THEN Datalength(st.TEXT)
                    ELSE r.statement_end_offset
                    END - r.statement_start_offset
                ) / 2
            ) + 1) AS …
Run Code Online (Sandbox Code Playgroud)

sql-server locking alerts blocking

4
推荐指数
1
解决办法
5543
查看次数

标签 统计

alerts ×1

blocking ×1

locking ×1

sql-server ×1