https://www.red-gate.com/simple-talk/sql/learn-sql-server/how-to-track-down-deadlocks-using-sql-server-2005-profiler/

https://social.msdn.microsoft.com/Forums/sqlserver/en-US/41a510cc-0e54-4bfb-92d2-12996abf99f6/help-needed-to-read-the-deadlock-graph?forum=sqldatabaseengine

Event: Proc [Database Id = 12 Object Id = 525453146]

执行以下的sql语句,可以得到数据库名字和object名字

SELECT OBJECT_NAME(525453146) ,
DB_NAME(12);

https://www.cnblogs.com/rush/archive/2012/02/19/2358209.html

trace追踪的时候,选择deadlock:graph,deadlock:lock,deadlock:chain

https://blogs.msdn.microsoft.com/sqlserverfaq/2013/04/26/how-to-monitor-deadlock-using-extended-events-in-sql-server-2008-and-later/

Mentioned below are trace flags which are classical way to enable Deadlock trace in SQL Server Editions.

  1. Enable Trace Flag 1204 - Here data are captured in node level.

Dbcc traceon (T1204,-1)

  1. Enable Trace Flag 1222 - Here data is returned in XML Format. Also one can see the processes information also which are involved in deadlock.

DBCC Traceon (T1222,-1)

  1. Run SQL Profiler Trace to capture the Deadlock events.

This deadlock information can be viewed in SQL Server Error Logs and Trace Files.

DBCC TRACEON(1204, -1);
DBCC TRACEON(1222, -1);

DBCC TRACEON - Trace Flags

Trace flags are used to set specific server characteristics or to alter a particular behavior.

For example, trace flag 3226 is a commonly used startup trace flag which suppresses successful backup messages in the error log.

Trace flags are frequently used to diagnose performance issues or to debug stored procedures or complex computer systems, but they may also be recommended by Microsoft Support to address behavior that is negatively impacting a specific workload.

All documented trace flags and those recommended by Microsoft Support are fully supported in a production environment when used as directed.

Note that trace flags in this list may have additional considerations regarding their particular usage, so it is advisable to carefully review all the recommendations given here and/or by your support engineer.

Also, as with any configuration change in SQL Server, it is always best to thoroughly test the flag in a non-production environment before deploying.

1204

Returns the resources and types of locks participating in a deadlock and also the current command affected. For more information, see this Microsoft Support article.

Scope: global only

SQL Server technical bulletin - How to resolve a deadlock

1222

Returns the resources and types of locks that are participating in a deadlock and also the current command affected, in an XML format that does not comply遵从 with any XSD schema.

Scope: global only

DBCC TRACESTATUS

Displays the status of trace flags.

DBCC TRACESTATUS(1204,-1);
DBCC TRACESTATUS(1222,-1);
DBCC TRACESTATUS(-1);

sql server deadlock problem的更多相关文章

  1. sql server deadlock跟踪的四种方法

    最近写程序常会遇到deadlock victim,每次一脸懵逼.研究了下怎么跟踪,写下来记录下. 建测试数据 CREATE DATABASE testdb; GO USE testdb; CREATE ...

  2. Check SQL Server Deadlock

    Sometimes a script keeps running for a long time and can't stop, then a db blocking is occurring. We ...

  3. SQL Server Lock Escalation - 锁升级

    Articles Locking in Microsoft SQL Server (Part 12 – Lock Escalation) http://dba.stackexchange.com/qu ...

  4. SQL Server 得到SPID,唯一的sessionID

    像.net中的session一样,假设能知道了数据库中的sessionID,那全部的操作都能知道了,由于有了这个唯一的身份识别的标识. 能够做的事情有非常多,如:当前哪个用户在做什么操作,在运行什么s ...

  5. Problem to create "New Database Diagram" in Microsoft SQL Server Management Studio for SQL Server 2012

    Error: when click "New Database Diagram", a error popped up and said "Attempted to re ...

  6. (转)SQL Server上的一个奇怪的Deadlock及其分析方法

    原文地址:http://blogs.msdn.com/b/apgcdsd/archive/2012/02/28/sql-server-deadlock.aspx 最近遇到了一个看上去很奇怪,分析起来很 ...

  7. SQL Server technical bulletin - How to resolve a deadlock

    https://support.microsoft.com/en-us/help/832524/sql-server-technical-bulletin-how-to-resolve-a-deadl ...

  8. How to solve a login problem of SQL Server?

    Sometimes when we attempting to login the SQL Server 20xx Management Studio, when we type in the cor ...

  9. Microsoft SQL Server Trace Flags

    Complete list of Microsoft SQL Server trace flags (585 trace flags) REMEMBER: Be extremely careful w ...

随机推荐

  1. 如何通过PHP判断年份是否是闰年----两种方法

    1.定义:闰年是对4取余为0,对100取余不等于0,对400取余等于0的年是闰年. 2.代码: 第一种方法:直接函数判断 $day = date('Y'); if ($day%4==0&&am ...

  2. HashMap的clear()方法和new HashMap的效率问题

    最近研究Lucene的时候,遇到的用到大量Map的问题,心生好奇,想看一下在1W,10W,100W三种数据量下,new HashMap ,与 HashMap.clear()方法的效率问题. 提前说明: ...

  3. tomcat启动不起来,不知原因,没有报错日志,控制台一闪而过 怎么办

    在startup.bat文件中 编辑,在最后一行回车 加上一个词pause,暂停,然后再启动就看见控制台的错误信息啦,然后就自己解决吧

  4. python time与datetime.date/datetime模块

    https://docs.python.org/3/library/datetime.html 1.用于日期比较大小的方法 方法名 方法说明 用法 __eq__(…) 等于(x==y) x.__eq_ ...

  5. UESTC 485 Game(康托,BFS)

    Today I want to introduce an interesting game to you. Like eight puzzle, it is a square board with 9 ...

  6. 简述Python的深浅拷贝以及应用场景

    深浅拷贝的原理 深浅拷贝用法来自copy模块. 导入模块:import copy 浅拷贝:copy.copy 深拷贝:copy.deepcopy 字面理解:浅拷贝指仅仅拷贝数据集合的第一层数据,深拷贝 ...

  7. rpm命令相关命令运用实例

    1) 挂载光盘文件到/media目录 2) 进去/media目录下的Packages目录 3) 查看系统已安装的所有rpm包 4) 查看系统是否安装dhcp软件包 5,安装dhcp软件包 6) 查看d ...

  8. msql 2000 使用DBCC CHECK DB 得出错误,槽引用错误

    转自:http://www.cnblogs.com/firstrose/p/4256257.html 某个SQL2000的数据库,在通过备份/还原的方法升级到2005时发生错误: 查找解决方法未果 正 ...

  9. redis3.2.11单机多实例集群部署并测试连接情况

    配置准备: redis3.2.11安装配置规划 机器 192.168.169.135(本机虚拟机) 系统 Red Hat Enterprise Linux Server release 6.4 (Sa ...

  10. C#数组实践

    using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Cont ...