SQL Server .bak还原所需的空间过大

我正尝试使用生产数据库将SQL Server 2008(标准版)备份还原到我的开发机器。 这样做时,我得到“可用空间不足”的错误。 SQL Server声称它需要43 GB的空闲来恢复我的分贝,但.bak文件只有4.5 GB! 当然,我会给它一点操作空间,但是实际使用的空间的数量有10倍似乎有点过分。 我不压缩这个数据库(当我压缩.bak文件,它下降到.8 GB)。

有什么我可以做的原始分贝,让它被安装在一个较小的工作空间?

是否有可能是您的交易日志文件…备份将要创build一个与原来的一样大的备份。

如果出现这种情况,最好的方法是在备份之前收缩日志文件。

备份之外的另一个选项是,如果可以脱离备份,则复制数据库文件并重新附加,然后SQL将创build一个新的事务日志文件,默认大小为1mb。

43GB是MDF和LDF文件的组合大小(最有可能)。

一个备份只需要在文件中使用过的页面,所以完全有可能,特别是如果你有大量的表/索引碎片,或从来没有pipe理你的日志文件或从来没有做过索引维护

修复:更多的磁盘空间(当然!)。 尝试并恢复到压缩的NTFS文件夹,外部USB驱动器/笔或其他盒子,以生成更多的临时存储,sorting数据,再次备份,恢复“正常”