打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
如何解决错误“已超过了锁请求超时时段。 (Microsoft SQL Server,错误: 1222)“
在Microsoft SQL Server Management Studio中,有时会在对象资源管理器中查看树、表或过程时收到错误。当查询等待的时间超过锁定超时设置时,通常会发生此错误。锁定超时以毫秒为单位,等待后端资源可用(默认锁定超时为-1)。
在大多数情况下,查询在等待超过10ms后失败,并出现锁定请求超时错误。我们可以通过以下两种方法来解决这个错误。
一、使用存储过程 sp_who2
使用sp_who2检查数据库中当前建立的所有会话,并检查是否存在阻塞、高CPU使用率、高I/O使用率,或是否存在同一SPID的多个条目。这些将导致锁定超时,您需要进行相应的故障排除。
二、设置  LOCK_TIMEOUT
语法:SET LOCK_TIMEOUT timeout_period
其中参数 timeout_period 是Microsoft SQL Server返回锁定错误之前经过的毫秒数。值-1(默认值)表示没有超时时间(即永远等待)。
当等待锁定超过超时值时,将返回错误。值为0表示完全不等待,一旦遇到锁就立即返回消息。
在连接开始时,此设置的值为-1。更改后,新设置将在连接的其余部分保持有效。
SET LOCK_TIMEOUT的设置在执行或运行时设置,而不是在解析时设置。
READPAST锁定提示提供了此SET选项的替代选项。
CREATE DATABASE、ALTER DATABASE和DROP DATABASE语句不符合SET LOCK_TIMEOUT设置。
例如,以下示例将锁定超时时间设置为1800毫秒:
SET LOCK_TIMEOUT 1800;
下面的示例将锁定超时设置为永远等待且永不过期。这是在每个连接开始时已设置的默认行为。
SET LOCK_TIMEOUT -1;

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
sql server 事务处理
Microsoft SQL Server Product Samples: Database
JDBC错误FAQ
SQL Server 2008R2 数据库出现“可疑”导致无法访问解决办法
SQL Server2005添加关系图时提示 "此数据库没有有效所有者..."
Win7 附加数据库失败 错误5120
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服