今天做一个11亿条数据的更新,用的SSIS里面的DEBUG模式,用了好久没结束,就点了方块结束了。结果发现数据库还在运行那个UPDATE语句,就用exec sp_who2查出来的SPID给kill了。kill后很长时间一直在回滚,不想等了就强制结束了MSSQLSERVER的服务,然后重启服务。这下完了,那个表也被锁了,X锁,数据库也被锁了,S锁更可气的是用sp_who2看,有一个sa用户执行的BACKGROUND进程,执行内容是DB STARTUP
kill不了,说只能kill用户进程但是这个进程一直阻塞我所有数据库操作语句,包括detach,truncate,drop,删数据库,都不行,愁死了!!解决不了回不了家了,大家有没有谁有经验?能把这个数据库干掉就行!
kill不了,说只能kill用户进程但是这个进程一直阻塞我所有数据库操作语句,包括detach,truncate,drop,删数据库,都不行,愁死了!!解决不了回不了家了,大家有没有谁有经验?能把这个数据库干掉就行!
解决方案 »
- 这样的两个表如何设计呢
- 求 建表时check 约束写法 只要表达式 不要正则
- 使用union联合查询时分页时数据显示不正确
- 关于全局变量,显示事物,索引的3个弱弱的问题!!望高手解惑
- Select语句求助!
- 一个简单的SQL 查询,比较着急.请各位帮忙.非常感谢
- 帮忙啊!!结束标记 'HEAD' 与开始标记 'META' 不匹配,咋回事???
- 【CSDN】【续】【多级分类档案ID自动编码存储过程的实现遇到难题,大家帮忙看看,跪谢】
- Msg 8621: The query processor ran out of stack space during query optimization. Please simplify the query.
- 关于数据源,什么是数据源?哪里有详细介绍数据源知识?
- 怎样写sql语句能加快sql查询速度
- SQL2000 DB還原後,執行一個查詢,出現以下錯誤。
2.如果1不行,则 format c: (设MSSQL装在C盘,不然的话,装在哪个盘格哪个盘)!
3.如果2还不行,把主板和硬盘拆下来,找个锤子把分别砸几下,再装上试试.
即使你取消操作,SQL Server也要花好大的代价进行前滚和回滚操作.
楼主11亿条记录实在恐怖,当务之急先把数据库设为简单恢复模式.
否则日志文件(LDF)撑死你的硬盘.
SQL Server还是会自动在执行一个CheckPoint进程,
也就是回滚之类的操作,确保事务的一致性.
每次sqlserver服务启动的时候确实要做大量的工作,这个也是负担很大
不过还有一招
重装sqlserver肯定管用
系统后台总有个CheckPoint的进程在锁住整个数据库.
DML都无法执行,Kill SPID也不行(提示是后台进程).
后来只能
异机恢复-->DBCC CHECKDB-->卸离-->删日志文件-->附加在异机-->异机卸离.
-->原机器停止服务-->删除MDF,LDF-->用异机的MDF,LDF来替换.
上面说的关服务,直接删库文件,让服务重启后,此库置疑就行了更新是什么意思?update表?update、删肯定是要写日志的,一次性涉及记录数多,写日志肯定会拖死
truncate表本来可以不写日志的,update好像就没有不写日志的做法了