Tôi đã thực hiện một số thử nghiệm các phương pháp khác nhau để nén và lưu trữ Sao lưu MS SQL (sử dụng phiên bản MS SQL 2008 R2 Enterprise) và tôi tự hỏi thuật toán nén hiệu quả nhất là gì để lưu trữ lâu dài các bản sao lưu đó, bên ngoài SQL thuật toán nén nội bộ.
Vì bạn đang sử dụng phiên bản SQL 2008 R2 Enterprise, bạn có thể / phải tận dụng
- Nén dữ liệu - Nén hàng và trang. ở cấp dữ liệu
Sao lưu nén khi lấy bản sao lưu để giảm thiểu dấu chân đĩa của bản sao lưu.
USE master;
GO
EXEC sp_configure 'backup compression default', '1';
RECONFIGURE WITH OVERRIDE;
Nén sao lưu sử dụng các chu kỳ CPU để nén dữ liệu trước khi rời khỏi máy chủ và đó là lý do tại sao trong phần lớn các tình huống, sao lưu nén nhanh hơn sao lưu không nén.
Lưu ý rằng khi bạn sử dụng các công cụ nguồn mở, bạn cần giải nén tệp sao lưu cơ sở dữ liệu trước khi bạn có thể tự bắt đầu quá trình khôi phục.
ví dụ: Khi bạn nhận được bản sao lưu cơ sở dữ liệu SQL là 50 Gb, được nén thành 5 GB. Để khôi phục cơ sở dữ liệu này, bạn cần nhiều không gian đĩa hơn:
- 5 Gb cho tệp zip
- 50 Gb cho tệp sao lưu
- 50 Gb cho cơ sở dữ liệu được khôi phục. (giả sử chúng không có khoảng trống trong cơ sở dữ liệu)
Trong tổng số 105 Gb của không gian đĩa là cần thiết.
Bạn vẫn có thể sử dụng các công cụ nén mã nguồn mở như gzip , 7Zip , bzip2 hoặc QuickLZ sau khi nén sao lưu có lợi.
Ngoài ra, hãy xem Sao lưu nén MSSQL trên codeplex.
Tài liệu tham khảo tốt cho số liệu thống kê so sánh