我可以提高优先级来处理我已经被杀死并正在回滚的进程吗?

我有一个工作,通常运行约2个小时。 今天早上,它仍然在5小时运行,我决定杀了它。 它现在已经处于“KILLED / ROLLBACK”状态了。 当我再次运行KILL命令以获取回滚的状态时,我得到以下结果:

SPID 84:正在进行事务回滚。 预计回滚完成:0%。 预计剩余时间:0秒。

无论如何,我可以提高优先级或告诉SQL Server“快点”? 🙂

更新:

还是有办法让我说:“我不在乎桌子的状态,就放弃吧。”

在SQL Server 2008之前,我不知道任何可能的解决scheme。 由于SQL Server 2008中有资源pipe理器 ,它允许您指定使用的工作负载和资源。 我还没有使用它,所以我不能告诉你更多的细节。

一点也不。

一个select是停止SQL Server,移动MDF和LDF文件,启动SQL Server,删除可疑数据库,重新附加MDF文件,并希望您的数据库仍然有效。

或者恢复它。

我不是在开玩笑:ACID强制回滚,不允许没有外部干预的腐败的桌子。

有一个机会,可能会因为另一个原因被阻止,但通常是回滚交易。 在这种情况下,SQL Server重新启动可能会有所帮助,但如果出现问题,请不要哭泣:-)

如果这是生产,那么等待或删除/恢复。 你不能说“我不在乎桌子的状态,只是退出”。 在生产中…