SQL Server数据库的收缩一直在执行

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL Server数据库的收缩一直在执行相关的知识,希望对你有一定的参考价值。

参考技术A 删除表给数据库缩小空间时:执行如下操作老是存在执行了5,6个小时,还是一直没有执行完成。
在开启自动收缩选项的情况下,SQLServer定期会检查文件使用情况。如果空闲空间大于25%,SQLServer就会自动运行自动收缩数据库文件的动作。

如何清除SQLserver 日志

如何清除数据库日志

1
打开查询分析器,输入命令DUMP TRANSACTION 数据库名 WITH NO_LOG
2
再打开企业管理器–右键你要压缩的数据库–所有任务–收缩数据库–收缩文件–选择日志文件–在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了。
END
清除Log有两种方法

自动清除法:
开放数据库选项 Trunc Log on Chkpt,使数据库系统每隔一段时间自动清除Log。此方法的优点是无须人工干预,由SQL Server自动执行,并且一般不会出现Log溢满的情况;缺点是只清除Log而不做备份。
手动清除法
执行命令“dump transaction”来清除Log。以下两条命令都可以清除日志:
dump transaction with truncate_onlydump transaction with no_log
通常删除事务日志中不活跃的部分可使用“dump transaction with trancate_only”命令,这条命令写进事务日志时,还要做必要的并发性检查。SYBASE提供“dump transaction with no_log”来处理某些非常紧迫的情况,使用这条命令有很大的危险性,SQL Server会弹出一条警告信息。为了尽量确保数据库的一致性,你应将它 作为“最后一招”
参考技术A 分离数据库,转移日志文件,附加数据库重新生成日志文件 参考技术B 收缩数据库就可以了

以上是关于SQL Server数据库的收缩一直在执行的主要内容,如果未能解决你的问题,请参考以下文章

怎样在SQL Server 2000中收缩数据库

怎样在SQL Server 2000中收缩数据库

如何清除SQLserver 日志

sql server 数据库收缩

如何清除SQLserver 日志

如何清理sql server 2008日志