收缩数据库 执行transact-sql 语句或批处理 报错……

收缩数据库 执行transact-sql 语句或批处理 报错……,第1张

1、先查看一下是否需要收缩数据库;是否占用了过多空间

2、可以尝试修复一下数据库,再做收缩 *** 作。有时候数据库有一些问题(数据库可以访问并不报错),导致收缩不能正常进行!

1、是不是我的数据库现在收缩失败了啊?

答:你的数据库收缩还没有完全失败,但已经可以视为失败,因为要做完收缩遥遥无期,需要的时间将十分漫长,具体原因见第三问。

2、大家有过对大型数据库的收缩经验吗?时间怎么这么久啊?

答:数据库的收缩时间与数据库大小是成正比的,数据库越大,收缩时间越长。所以建议要定时进行数据库收缩,每年一次或几个月一次,依数据库增长速度而定。

3、为什么我按百分比收缩时总是不成功?和盘符所剩空间有关系么?

答:不论是按百分比收缩还是按空间大小进行收缩,都要求数据库所在磁盘预留一定的空间,最好在15%以上。在数据库进行收缩时,系统将把这部分预留空间作为缓冲区,用来保存和整理数据库中的数据,然后再把整理过的数据写回数据库。像你说的这种情况,数据文件大小为598G,可用空间为9M,基本无法进行有效的数据库收缩。建议你把数据库文件解挂后,复制到750G以上的大容量硬盘中,重新附加数据库后再进行收缩。

4、数据库收缩的简单原理是什么啊?和盘符所剩空间有关系么?

答:数据库收缩的简单原理有两条,一是清理日志,因为日志记录的是数据库的历史 *** 作,在一段时间后,如果没有保存价值可以清除;二是清理空白空间,这种空间是删除数据表(一般是临时表)后造成的,数据表删除后,数据库空间不会自动缩小,所以数据文件就会越来越大。和盘符所剩空间的关系,第三问已经回答了。

主要是事务日志占空间

1.“备份类型”选“事务日志”。

2.收缩->数据库,选“在释放未使用的空间前重新组织文件……”。

反复 *** 作上述两个步骤,如果不能设为单用户模式,动作要紧凑。

这样才能收缩到最小(只有几M)。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9955703.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-03
下一篇2023-05-03

发表评论

登录后才能评论

评论列表(0条)

    保存