SQL Server 数据库备份压缩是否可以实现?

使用时,SQL Server 数据库会变得非常大,备份也是如此。它们占用大量磁盘空间,并且每次备份数据库或四处移动都非常耗时。因此,您可能想知道是否有任何方法可以创建压缩备份。

答案是“肯定”的。MSSQL 备份压缩是SQL Server2008 及更高版本上的一个强大功能,但“默认情况下它是关闭的”。要使用此功能,您可以使用 GUI 启用备份压缩选项,或使用带有压缩命令的备份脚本。

在本文中,我将向您展示如何使用压缩命令备份数据库SQL Server脚本的具体步骤。

使用脚本创建压缩的 SQL数据库备份

基本上,如果您想始终使用压缩命令备份数据库 SQL Server,您只需使用命令打开备份压缩的默认选项,然后所有备份将被压缩,直到您再次将其关闭。

如果您只想在进行特定备份时使用 compress 选项,则可以在需要时将 WITH COMPRESSION 添加到语句中。下面提供了脚本。

如果您只想打开备份压缩默认值,您可以启动SQL Server Management Studio (SSMS)并单击“新建查询”,输入以下命令:

EXEC sys.sp_configure N'backup compression default', N'1'
GO
RECONFIGURE WITH OVERRIDE
GO

类型N'1'是打开备份压缩默认,而N'0'是关闭。一旦它打开,每次备份时它们都会被压缩,直到你再次更改它。通过这种方式,您可以根据需要更改默认值。

使用压缩备份单个或几个 SQL数据库的脚本

启动SQL Server Management Studio (SSMS ) 并连接到您的实例,单击标准栏上的“新建查询”,或右键单击您的数据库名称并选择新建查询。输入以下语句:

BACKUP DATABASE databasename TO DISK = ' filepath ' WITH COMPRESSION

然后单击“执行”开始。

带压缩的备份命令

★温馨提示:
至于Filepath,您需要输入文件的路径和名称。例如:D:\backup\database.bak
如果你想备份更多的数据库,你可以用改变的数据库名称重复这个语句。如果你不想压缩备份,你可以删除WITH COMPRESSION

如果要压缩备份一个实例的所有 SQL数据库,启动 SSMS并照常连接,单击“新建查询”并输入以下语句:

DECLARE @name VARCHAR(50) -- 数据库名称
DECLARE @path VARCHAR(256) -- 备份文件的路径
DECLARE @fileName VARCHAR(256) -- 备份文件名
DECLARE @fileDate VARCHAR(20) -- 用于文件名
SET @path = ' filepath ' --添加路径,例如 D:\backup\
SELECT @fileDate = CONVERT(VARCHAR(20),GETDATE(),112)
DECLARE db_cursor CURSOR FOR
SELECT name
FROM master.dbo.sysdatabases
WHERE name NOT IN ('master','model','msdb','tempdb')
OPEN db_cursor
FETCH NEXT FROM db_cursor INTO @name
WHILE @@FETCH_STATUS = 0
BEGIN
SET @fileName = @path + @name + '_' + @fileDate + '.BAK'
BACKUP DATABASE @name TO DISK = @fileName
使用 COMPRESSION
FETCH NEXT FROM db_cursor INTO @name
END
CLOSE db_cursor
DEALLOCATE db_cursor

然后单击工具栏上的“执行”开始。

使用压缩备份所有数据库的脚本

此外,还有一些其他陈述可能对您有所帮助:

语句:'WHERE name NOT IN ('master','model','msdb','tempdb')' 用于排除您不想备份的数据库。如果您想备份更多,您可以根据需要进行更改。例如:

WHERE 名称不在 ('tempdb')

如果您想在文件名中包含数据库名称,您可以更改语句: 

SELECT @fileDate = CONVERT(VARCHAR(20),GETDATE(),112) 

进入:

SELECT @fileDate = CONVERT (NVARCHAR (20), GETDATE (), 112) + '_' +
REPLACE (CONVERT (NVARCHAR (20), GETDATE (), 108), ':', '')

如果要显示备份的进度统计信息,可以在“WITH COMPRESSION”之后添加“STATS=”。例如:  

WITH COMPRESSION, STATS=5(随意更改数字)

启用 SQL数据库备份压缩的一种更简单的方法

备份数据库 带压缩的SQL Server脚本 对新手不太友好,复杂繁琐,任何一点小错误都可能导致备份失败。最好是熟悉 T-SQL,并且知道如何根据自己的要求进行更改。

但如果你不能,我建议你尝试更简单的方法,例如可视化管理软件。它更方便,最重要的是,您只需单击即可随意更改设置。我认为傲梅企业备份网络版是一个很好的解决方案,原因如下:

✦ “更改压缩级别:”您可以更改压缩级别。压缩级别越高,备份文件越小。

✦ 跨 LAN 备份/传输:与 SSMS 不同,傲梅企业备份网络版 可以帮助您完成 LAN 内所有台式计算机、笔记本电脑、工作站和服务器的多个备份。 

✦ “备份计划:”您可以计划自动备份任务以在固定时间段内备份您的数据库。

✦ “集中备份功能:”除SQL数据库外,还支持文件、分区、磁盘和操作系统备份。

如何使用 傲梅企业备份网络版启用备份压缩

首先,在您的计算机上下载并安装傲梅企业备份网络版。

启动软件,并通过单击计算机 “安装客户端程序”“来安装代理程序包”。  

安装客户端程序

在开始之前,您需要请求控制要备份的计算机。单击计算机 “不受控制的计算机”,选择正确的 IP 并 右键单击它以“请求控制”

请求控制

当您的请求被所有客户端接受后,您就可以开始创建集中备份任务了。

1. 单击”任务“ ”新任务“ ”SQL Server 备份“在提示窗口中,您可以看到3 个步骤。

SQL Server 备份

2. 单击步骤1 中的“添加计算机”然后选择您的客户端计算机的正确IP。

添加计算机

3. 步骤2是最重要的,这使得这个软件强大而独特。您可以在此步骤中“选择多个实例和数据库”进行一次备份。

选择实例和数据库

4.在第3步中选择一个存储路径,在“共享””显示名字“的空白处填写,添加的路径将被保存以备后用。

选择路径

5. 点击设置 “压缩”您可以选择压缩级别。级别越高,备份文件越小,但需要的时间越长。大多数时候,”普通“就足够了。然后单击”确定“ > ”开始备份“ >”创建和执行任务。“

备份设置压缩

6.除此之外,您还可以在“设置”下的“计划”中“设置”不同日/周/月时段的自动备份计划。此外,您可以在“高级”中选择完整备份或差异备份。

日程设置

概括

在本文中,我介绍了如何使用压缩备份数据库SQL Server脚本,希望对您有所帮助。

当然,如果你不喜欢繁琐的SQL 脚本压缩备份数据库,你也可以选择更简单方便的方式,比如傲梅企业备份网络版。使用该软件,您不仅可以一次备份多个实例和数据库,还可以根据需要选择不同类型的备份。

作为企业备份解决方案,它可以管理备份局域网内的所有计算机毫不费力,这绝对值得一试。