我在SQL Server 2005上执行一个可序列化事务的存储过程。在这个事务中,它选择一个带有行锁的表。在过程结束时,在回滚/提交之后,它将事务隔离级别设置为Read Commited。SQL Server目前无法获取LOCK资源 - 该怎么办?
这个程序运行时,不同的进程有这些限制来控制并发访问,但突然,一段时间后,一些流程抛出一个SQL异常:
在SQL Server 数据库引擎实例不能获得一个LOCK 资源在这个时候。当活动的用户较少时重新运行 声明。请数据库管理员 检查此实例的锁和内存 配置,或者检查长时间运行的事务的 。
这是不可预测的,它可能发生在早期或一小时后。
我能做些什么来解决这个问题?
+1完全同意。你真的需要一个可序列化的交易吗? – 2008-11-14 14:28:30