进程死锁了,用kill不能杀死,又不能重启DB,有无其它办法?

ecat2003 2007-09-28 04:18:48
Kill 299
SPID 299: 正在进行事务回滚。估计回滚已完成: 0%。估计剩余时间: 0 秒。
...全文
348 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjcxc 2007-09-30
  • 打赏
  • 举报
回复
不管系统自动kill(死锁),还是手工kill
都会回滚,因为必须保证数据一致性,重启一样会回滚
只是重启会断开所有用户连接,此时所有资源都可用于回滚,自然效率高,所以“有无办法强制杀掉,我不想重启DB”这个没有意义,因为不重启本来就可以kill掉,只是资源的问题,所以比重启来得慢而已
OracleRoob 2007-09-28
  • 打赏
  • 举报
回复
如果不能重新启动服务,可以试着把所有其他进程停止或kill掉,只剩下这一个进程,看看是否能自动解锁。
ecat2003 2007-09-28
  • 打赏
  • 举报
回复
查看,没有被等待的资源
hb_gx 2007-09-28
  • 打赏
  • 举报
回复
Kill 299 的时候会把 299这个进程未提交的事务都回滚,可能是在回滚的时候被其他的进程阻塞,查查有什么值得怀疑的进程一起 Kill ,或者等下去
andy84 2007-09-28
  • 打赏
  • 举报
回复
mark
ecat2003 2007-09-28
  • 打赏
  • 举报
回复
有无办法强制杀掉,我不想重启DB
kk19840210 2007-09-28
  • 打赏
  • 举报
回复
SQL能自动检查死锁 自动牺牲一个进程解除死锁
你说的情况可能是进程阻塞了
要么从新启动SQL服务
要么就等吧

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧