阿里云提醒您:
如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。 您可以通过sys.dm_tran_locks系统视图查看锁的信息,具体有下列两种情况: 数据库的锁信息 您可以执行以下SQL语句,查询哪些数据库有锁。 select str(request_session_id, 4, 0) as spid, convert(varchar(20), db_name(resource_database_id)) as DB_Name, case when resource_database_id = db_id() and resource_type = 'OBJECT' then convert(char(20), object_name(resource_Associated_Entity_id)) else convert(char(20), resource_Associated_Entity_id) end as object, convert(varchar(12), resource_type) as resrc_type, convert(varchar(12), request_type) as req_type, convert(char(3), request_mode) as mode, convert(varchar(8), request_status) as status from sys.dm_tran_locks order by request_session_id desc; 系统显示类似如下。
说明:MODE列是锁的模式,介绍如下: 共享(S)用于不更改或不更新数据的操作(只读操作),例如SELECT语句。 更新(U)用于可更新的资源中。防止当多个会话在读取、锁定以及随后可能进行的资源更新时发生常见形式的死锁。 排它(X)用于数据修改操作,例如INSERT、UPDATE或DELETE,确保不会同时同一资源进行多重更新。 意向锁用于建立锁的层次结构。意向锁的类型为:意向共享(IS)、意向排它(IX)以及与意向排它共享(SIX)。 架构锁在执行依赖于表架构的操作时使用。架构锁的类型为:架构修改(Sch-M)和架构稳定性(Sch-S)。 大容量更新(BU)向表中大容量复制数据并指定了TABLOCK提示时使用。 数据表的锁信息 您可以执行以下SQL语句,查询哪些数据表有锁。 select request_session_id sessionid, resource_type type, convert(varchar(20), db_name(resource_database_id)) as db_name, OBJECT_NAME(resource_associated_entity_id, resource_database_id) objectname, request_mode rmode, request_status rstatus from sys.dm_tran_locks where resource_type in ('OBJECT') 系统显示类似如下。 表锁 说明: sessionid为锁表的进程。 objectname为被锁的表名。 相关文档 SQL Server 事务锁定和行版本控制指南
适用于 云数据库RDS SQL Server版
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。