DBAtlas · 数据库运维图谱

24 LockTimeout: Operation exceeded time limit waiting for a lock(操作等待锁时超出时间限制)

MongoDB

含义

操作在等待所需的锁(例如数据库/集合级别)时超出了时间限制,被中止。未能及时获取到锁。

原因

长时间运行的操作或 DDL 命令(例如对集合执行的冲突管理操作)持有所需的锁;大量并发写入;或受 maxTimeMS 限制的操作在等待锁时到期。在索引/集合操作相互冲突时出现。

解决方法

找出持有锁的操作:用 db.currentOp() 检查活动和等待中的操作;必要时用 db.killOp() 终止它。将冲突的管理命令(索引创建、collMod、compact)移到非高峰时段。保持操作简短,避免不必要的长事务。如有需要,根据负载调整 maxTimeMS。

在 DBAtlas 中打开 →

同一数据库的其他条目