roc*_*ace 5 sql-server sql-server-2012
我想恢复我的数据库,我使用 sql server 2012 express edition 但是当我在 sql server management studio 中恢复我的备份文件时,我出现了这个错误:
System.Data.SqlClient.SqlError: 磁盘卷“c:\”上的可用空间不足,无法创建数据库。数据库需要 84260749312 个额外的空闲字节,而只有 47428677632 个字节可用。(Microsoft.SqlServer.SmoExtended)
我的 .bak 文件是 8.27 GB,我的 C 盘有 44.1 GB 可用空间。为什么我会出现这个错误?我该如何解决这个错误?提前致谢。
正如Max Vernon所说,数据库正试图恢复到一个没有空间容纳它的位置。如果备份文件被压缩或大部分是空的,您仍然需要完整的未压缩空间来恢复。此外,默认情况下,SQL Server 会尝试将这些文件还原到其原始文件位置,因此如果还原时该原始位置不存在或没有足够空间,则还原将失败。
为了查看备份所需的空间和位置,您可以运行以下命令:
RESTORE FILELISTONLY
FROM DISK='<backup file location>'
Run Code Online (Sandbox Code Playgroud)
此输出将显示备份中包含的所有文件。看看PhysicalName
和Size
为恢复位置和大小(以字节为单位)的SQL Server需要为恢复。您可以通过WITH MOVE
在您的恢复语句中指定语法来更改恢复位置,但正如 Max 所述,您对所需空间无能为力。
您需要 84,260,749,312 字节的可用空间来创建恢复数据库所需的文件。备份文件不一定代表所需的大小。
您只能将此备份恢复到具有所需可用空间的驱动器。
归档时间: |
|
查看次数: |
33213 次 |
最近记录: |