sqlserver执行大数据表中delete时服务器重启,数据文件一下增加了几G,如何删掉。急急 ( 积分: 100 )

  • 主题发起人 主题发起人 9861
  • 开始时间 开始时间
9

9861

Unregistered / Unconfirmed
GUEST, unregistred user!
sql_server2000 在执行一个长时间的delete时,服务器重启。重启后数据文件可能由于delete时分配的临时空间未删除,由原来的400M增大到3G,这些空间如何手工删除?
 
strinkdatabase啊。
 
是收缩数据库么?我收缩了,但还是比以前增加了300M...
 
日志占用大量的硬盘空间 ,截断日志

DUMP TRANSACTION [DataBaseName] with no_log
backup log [DataBaseName] with no_log
dbcc shrinkdatabase([DataBaseName])

把这个sql文本在查询分析器里执行一下 ,在收缩数据库就没问题了
 
留个标签...学习..
 
日志好说,关键我的是数据文件异常增大。。。。
 
更改日志模式为“简单”,收缩数据库!
 
手动删除
企业管理器 里面 删除
 
初步认为是你的代码导致SQL日志系统无穷递归,属常见故障,所以日志急剧膨胀造成数据文件异常增大,需要你的delete代码才能具体分析。
 
to wanchi:
delete代码没问题,就是delete from a where a.id not in(select b.id from b) 主要是我这个a表里有上千万的数据,正在执行删除时,服务器被人重启。。。
 
backup log db with no_log

dbcc shinrikfile dblog
 
新建一个空数据库,把数据导过去
 
后退
顶部