我一直在进行各种用于压缩和存储SQL Server备份的方法的测试(使用SQL Server 2008 R2 Enterprise版),我想知道在SQL以外的长期存储这些备份的最有效的压缩算法是什么。内部压缩算法。
我不担心物理存储或磁带驱动器或其他任何东西,只想将我们的3TB数据和日志文件转换为我能最小的单个文件。
因此,例如,.zip还是.7z?还是我的数据库中有太多变量无法准确估计什么是最有效的变量,而我只需要做一些测试?还是我将获得最好的SQL Server内部压缩?
我一直在进行各种用于压缩和存储SQL Server备份的方法的测试(使用SQL Server 2008 R2 Enterprise版),我想知道在SQL以外的长期存储这些备份的最有效的压缩算法是什么。内部压缩算法。
我不担心物理存储或磁带驱动器或其他任何东西,只想将我们的3TB数据和日志文件转换为我能最小的单个文件。
因此,例如,.zip还是.7z?还是我的数据库中有太多变量无法准确估计什么是最有效的变量,而我只需要做一些测试?还是我将获得最好的SQL Server内部压缩?
Answers:
我一直在进行各种用于压缩和存储MS SQL备份的方法的测试(使用MS SQL 2008 R2 Enterprise版),我想知道在SQL以外的长期存储这些备份最有效的压缩算法是什么内部压缩算法。
由于您使用的是SQL 2008 R2 Enterprise版,因此您可以/必须利用
USE master;
GO
EXEC sp_configure 'backup compression default', '1';
RECONFIGURE WITH OVERRIDE;
备份压缩使用CPU周期在数据离开服务器之前对其进行压缩,这就是为什么在大多数情况下,压缩备份比未压缩备份要快的原因。
请注意,在使用开放源代码工具时,需要先解压缩数据库备份文件,然后才能自行启动还原过程。
例如:当您收到50 Gb的SQL数据库备份,压缩为5 GB。要还原该数据库,您需要更多的磁盘空间:
总共需要105 Gb磁盘空间。
备份压缩后,您仍可以使用gzip,7Zip,bzip2或QuickLZ等开源压缩工具,以从中受益。
另外,请查看codeplex 上的MSSQL压缩备份。
比较统计的良好参考
在备份压缩方面,我(几年前)比较了Red Gate的SQL Backup,Quests的LiteSpeed for SQL Server和Idera的SQLSafe提供的备份压缩选项,以这三种产品为基准。在最大压缩率下,典型备份的差异在三者之间花费了大约5%的时间差,而在备份大小上的差别则更大一些,其中Red Gate排名最高(90%压缩,而Idera和80%压缩为80%,搜寻,按此顺序)。