2016-10-23 105 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 
相關問題