GetDeadLockDetailList - 查询RDS SQL Server实例的死锁列表

调用GetDeadLockDetailList接口,查询RDS SQL Server实例的死锁详情列表。

接口说明

  • 本接口仅适用于 RDS SQL Server 版实例。
  • 使用阿里云或 DAS 的 SDK 时,建议使用最新版本。
  • 在使用 SDK 调用 DAS 服务时,需要将地域指定为 cn-shanghai。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
hdm:GetDeadLockDetailListlist
*全部资源
*

请求参数

名称类型必填描述示例值
InstanceIdstring

数据库实例 ID。

rm-2ze2016723b32****
StartTimestring

查询开始时间,格式为 Unix 时间戳,单位为毫秒。

1701755730292
EndTimestring

查询结束时间,格式为 Unix 时间戳,单位为毫秒。

1702360530292
PageNostring

页码,取值大于 0 且不超过 Integer 数据类型的最大值,默认值为 1。

1
PageSizestring

每页最大记录数,默认值为 10。

5
DbNameListstring

数据库名。传入多个数据库时,各个数据库名称间使用英文逗号(,)进行分隔。

testdb1,testdb2

返回参数

名称类型描述示例值
object
Codestring

返回的状态码。

200
Messagestring

请求返回消息。

说明 请求成功时该参数返回 Successful,请求失败时会返回请求异常信息(如错误码等)。
Successful
Dataobject

返回的数据。

Listarray<object>

详细信息列表。

Listobject

返回信息列表。

BatchIdlong

采集的时间,格式为 Unix 时间戳,单位为毫秒。

1702301170701
BlockProcessListarray<object>

阻塞列表。即主动造成锁定的会话信息。

BlockProcessListobject
ClientAppstring

当前事务所使用的客户端名称。

Microsoft SQL Server Management Studio - Query
HostNamestring

主机名。

sd7402****
LastTranStartedlong

事务开启的时间。格式为 Unix 时间戳,单位为毫秒。

1702301152000
LockModestring

锁模式。更多信息,请参见锁模式

U
LogUsedlong

会话已经生成的日志大小。单位:字节(Byte)。

352
LoginNamestring

用户登录名。

sd7402****\\Administrator
ObjectOwnedstring

已经被锁住的对象。

testdb1.dbo.test2
ObjectRequestedstring

当前事务请求加锁的对象。

testdb1.dbo.test1
OwnModestring

会话当前持有的锁模式。更多信息,请参见锁模式

X
Spidlong

开启事务的会话 ID。

61
SqlTextstring

SQL 语句详情。

update test1 set col1 =9
Statusstring

当前事务的状态。

suspended
Victimlong

是否是死锁的受害者:

  • 0:不是。
  • 1:是。
0
WaitModestring

会话当前正在等待的锁模式。更多信息,请参见锁模式

U
WaitResourcestring

当前事务等待中的资源。

RID: 5:1:312:0
WaitResourceDescriptionstring

当前事务等待中的资源详情。

RID:school:school.mdf:312:0
DatabaseNamestring

数据库名称。

testdb1
ClientAppstring

客户端名称。

Microsoft SQL Server Management Studio - Query
HostNamestring

主机名。

sd7402****
LastTranStartedlong

事务开启的时间。格式为 Unix 时间戳,单位为毫秒。

1702301141000
LockModestring

锁模式。更多信息,请参见锁模式

U
LogUsedlong

会话已经生成的日志大小。单位:字节(Byte)。

352
LoginNamestring

用户登录名。

sd7402****\\Administrator
ObjectRequestedstring

当前事务请求加锁的对象。

testdb1.dbo.test2
ObjectOwnedstring

已经被锁住的对象。

testdb1.dbo.test1
OwnModestring

会话当前持有的锁模式。更多信息,请参见锁模式

X
Spidlong

开启事务的会话 ID。

56
SqlTextstring

SQL 语句详情。

update test2 set col1 =88
Statusstring

当前事务的状态。

suspended
Victimlong

是否是死锁的受害者:

  • 0:不是。
  • 1:是。
1
WaitModestring

会话当前正在等待的锁模式。更多信息,请参见锁模式

U
WaitResourcestring

当前事务等待中的资源。

RID: 5:1:376:0
WaitResourceDescriptionstring

当前事务等待中的资源详情。

RID:school:school.mdf:376:0
DatabaseNamestring

数据库的名称。

testdb1
PageNolong

当前页码。

1
PageSizelong

每页记录数。

10
Totallong

返回总记录数。

2
RequestIdstring

请求 ID。

840F51F7-9C01-538D-94F6-AE712905****
Successstring

请求是否执行成功:

  • true:执行成功。
  • false:执行失败。
true

示例

正常返回示例

JSON格式

{
  "Code": "200",
  "Message": "Successful",
  "Data": {
    "List": [
      {
        "BatchId": 1702301170701,
        "BlockProcessList": [
          {
            "ClientApp": "Microsoft SQL Server Management Studio - Query",
            "HostName": "sd7402****",
            "LastTranStarted": 1702301152000,
            "LockMode": "U",
            "LogUsed": 352,
            "LoginName": "sd7402****\\\\Administrator",
            "ObjectOwned": "testdb1.dbo.test2",
            "ObjectRequested": "testdb1.dbo.test1",
            "OwnMode": "X",
            "Spid": 61,
            "SqlText": "update test1 set col1 =9",
            "Status": "suspended",
            "Victim": 0,
            "WaitMode": "U",
            "WaitResource": "RID: 5:1:312:0",
            "WaitResourceDescription": "RID:school:school.mdf:312:0",
            "DatabaseName": "testdb1"
          }
        ],
        "ClientApp": "Microsoft SQL Server Management Studio - Query",
        "HostName": "sd7402****",
        "LastTranStarted": 1702301141000,
        "LockMode": "U",
        "LogUsed": 352,
        "LoginName": "sd7402****\\\\Administrator",
        "ObjectRequested": "testdb1.dbo.test2",
        "ObjectOwned": "testdb1.dbo.test1",
        "OwnMode": "X",
        "Spid": 56,
        "SqlText": "update test2 set col1 =88",
        "Status": "suspended",
        "Victim": 1,
        "WaitMode": "U",
        "WaitResource": "RID: 5:1:376:0",
        "WaitResourceDescription": "RID:school:school.mdf:376:0",
        "DatabaseName": "testdb1"
      }
    ],
    "PageNo": 1,
    "PageSize": 10,
    "Total": 2
  },
  "RequestId": "840F51F7-9C01-538D-94F6-AE712905****",
  "Success": "true"
}

错误码

HTTP status code错误码错误信息描述
400InvalidParamsThe request parameters are invalid.请求参数错误
403NoPermissionYou are not authorized to do this action.没有权限执行该操作

访问错误中心查看更多错误码。