tho*_*asb 8 sql-server backup disk-space restore sql-server-express
我有一个大约 6Gb 的备份。它是原始文件的“轻量级”备份(清除了日志表),大约为 14Gb。
我尝试在我的 SQL Express 本地服务器上恢复备份。它失败并显示类似 : 的消息System.Data.SqlClient.Error: insufficient disk space。它要求 227,891,019,776 字节,这绝对是疯狂的,几乎和我的整个硬盘一样大。
正如在其他网站上发现的那样,我尝试了RESTORE FILELISTONLY FROM DISK = 'backupfile.bak'.
数据文件(列Size)的大小为 6,888,226,816,但日志文件的大小为 221,006,987,264。该列BackupSizeInBytes返回 6,259,736,576 和 0。
因此,如果我理解正确,则在继续之前,恢复检查我是否有足够的空间来恢复日志文件的“理论”大小,而忽略实际的日志文件大小?
我怎样才能绕过它?获得备份有点困难,所以如果我能在不返回生产服务器的情况下解决我的问题,那就太好了。
谢谢 !
哦顺便说一句,我在 SQL Server 2008 R2 Express 上。
请注意,备份大小不包括空页,但是当您实际执行还原时,数据和日志文件将超过 200 GB,因为它必须准确还原源系统的内容(包括 200+ GB 的日志文件,不管它有多满)。
如果您不想冒数据丢失的风险,您需要在源头更正它(例如将日志文件缩小到合理的范围),再进行一次完整备份,然后恢复它。我不确定我是否理解为什么很难获得备份 - 这是一个非常标准的操作,应该是您为托管 SQL Server 付费的任何人提供的服务。
您还应该将源数据库修复为 (a) 处于正确的恢复模式或 (b) 更频繁地进行日志备份。您的日志文件很可笑,因为您处于完全恢复状态并且从不进行日志备份。如果您需要时间点恢复,请开始备份您的日志。如果没有,请切换到简单。如果配置正确,日志文件应该自行管理。如果你不这样做,那么当它变成这样时,收缩应该是一次性操作,然后你应该修复配置,这样你下周就不会再这样做了......
| 归档时间: |
|
| 查看次数: |
40529 次 |
| 最近记录: |