2016-10-23 532 views
1

我的数据库很大,839 MB,因为可能有很多图像,而当我在SQL Management Studio中执行下一步操作时:右键单击数据库 - >任务 - >备份。 。数据库备份后MyBackup.bak文件为829 MB,是不是应该更小?我需要将我的.bak文件上传到另一台服务器,最大上传大小为250MB,因此您可以看到我遇到了问题。备份文件太大SQL Server 2012

所以我的问题是如何减少SQL Server上的.BAK文件的大小。

+0

“很多图像可能” - 你应该首先看看你的数据库,并确实知道有什么和需要多少空间。如果您的表格被压缩,请考虑这一点。 –

回答

0

在备份数据库向导,尝试备份压缩设置为压缩备份

Right Click Database -> Tasks - > Back Up.. -> Backup Options -> Set backup Compression -> Compress backup

T-SQL

BACKUP DATABASE databasename TO DISK='path\..' 
WITH COMPRESSION 

采取备份检查备份大小后。如果它仍然不低于250MB,则使用Windows中存在的任何压缩/压缩应用程序(7zip,winzip,..)来压缩备份文件。

+0

我选择压缩备份后出现以下错误消息“System.Data.SqlClient.SqlError:由于'COMPRESSION'是在媒体格式化为不兼容结构后请求的,因此无法执行备份。要附加到此媒体集,可以省略'COMPRESSION'或指定'NO_COMPRESSION'或者,您可以在BACKUP语句中使用WITH FORMAT创建一个新的媒体集如果您在现有媒体集上使用WITH FORMAT,则其所有备份集都将被覆盖(Microsoft.SqlServer .Smo)“ –

+1

@ Roxy'Pro - 更改备份路径或备份的名称,然后重试 –

+0

我更改了备份位置文件的路径,我的意思是我添加了新路径,因此它创建了新的备份而不是覆盖旧的备份,但是那样做'帮助我很多,它只有50MB的小,而不是829MB它像780. –

0
-- If the database size too big better to go for Split backup so that it splits backup process and it will be faster 
Use Master 
Go 
BACKUP DATABASE [DatabaseName] 
TO DISK = N'Your Path\DatabaseName_1.bak' , 
DISK = N'Your Path\DatabaseName_2.bak' , 
DISK = N'Your Path\DatabaseName_3.bak'-- You can split up to 'n' nmber of disk loactions depends od size of backup file 
WITH NOFORMAT, 
NOINIT, NAME = N'DatabaseName-Full Database Backup', 
SKIP, NOREWIND, NOUNLOAD, COMPRESSION, STATS = 5 
GO 
相关问题