好的,我已经看到大量有关缩小和释放空间等的信息,但我没能看到的只是 SQL Server 2008 关于日志文件中释放空间的基础知识。
我的印象是(这似乎是 SQL Server 以前版本的情况),当完成完整备份后,已完成的日志就会被释放(即,如果在完整备份之前您有一个 500MB 的日志文件,其中有 10% 的可用空间,则在完整备份之后您可能会得到一个 100MB 的日志文件,其中有 70% 的可用空间)。
在 SQL Server 2008 中,我一直在检查大小(我有大约 10% 的可用空间),进行备份(BACKUP DATABASE DBNAME TO DISK = 'C:\temp\DBNAME.bak'),然后检查大小(文件大小没有变化,仍然有大约 10% 的可用空间)...预计可用空间会增加。
我的备份方式是否不正确?这不是正确的备份方式吗?需要做什么才能让备份正常进行?或者备份不再以这种方式进行?
编辑:接受下面的答案,添加我使用的脚本项目
选择 log_reuse_wait_desc,* 来自 DBNAME.sys.databases 其中 name = 'DBNAME'
将日志 DBNAME 备份到磁盘 = 'c:\temp\DBNAMELog.bak'
将数据库 DBNAME 备份到磁盘 = 'c:\temp\DBNAME.bak'
选择 log_reuse_wait_desc,* 来自 DBNAME.sys.databases 其中 name = 'DBNAME'
答案1
备份不会自动发布 tx 日志。
http://blog.sqlauthority.com/2006/12/30/sql-server-shrinking-truncate-log-file-log-full/
对于完整的备份序列(如果您不想要的话,请杀死收缩文件)。
留在这里(由于服务器故障),该问题的答案如下