我有一个远程SQL服务器连接,正在更新一些价值与开始和提交TRANS命令的中间。 但是,在完成之前,查询被取消,表被locking。 几次尝试重新启动数据库后,表仍然被locking,然后我们重新启动机器。
现在更糟糕的是,我们甚至无法从management studio连接到服务器。 当我尝试连接时出现几个不同的错误,例如连接超时,服务器未知,最常见的错误是无法生成SSPI上下文。
它不能是域名的问题,因为我可以在同一个networking上使用相同的用户帐户之前连接好。 有谁知道如何解决这个问题?
为什么查询被取消? 这是一个很大的问题吗? 查询被取消后采取了哪些操作? 重启之前等了多久?
我问的原因是,当查询被取消时,数据库立即开始回滚事务。 如果查询在取消之前做了大量更改,则回滚可能需要很长时间(解释为什么表将被locking)。 这是事情通常情况恶化的原因,因为开发人员变得不耐烦,并重新启动服务/服务器。 然后,当数据库引擎启动时,数据库进入恢复模式,回滚在重新启动期间打开的所有事务。
你可以远程进入机器吗? 如果是这样,请检查服务以validation数据库引擎是否正在运行。 如果是这样,你可以通过pipe理工作室(远程)连接到本地主机。 如果没有,请启动它。 如果无法启动,请尝试从单用户模式启动。
牢记@布莱恩说 ,你应该做的另一件事是确保你有一个很好的最近的备份。 然后采取另一个好措施。