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

在使用SQL Server数据库时,数据库的大小以及备份的大小都可能变得非常庞大。这些数据占用了大量的磁盘空间,并且在备份数据库或移动数据库时需要花费大量的时间。因此,您可能想知道是否有方法可以创建压缩备份。

答案是肯定的。SQL Server 2008及更高版本引入了备份压缩功能,这是一个强大的功能,但默认情况下是关闭的。要使用这个功能,您可以在图形用户界面中启用备份压缩选项,或者在备份脚本中使用带有压缩命令的语法。

在本文中,我将向您介绍SQL Server备份——如何实现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 Server 压缩备份一个实例的所有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 Server备份数据库压缩的方法

对于新手来说,使用带有压缩的SQL Server脚本备份数据库可能会显得复杂而繁琐,而且即使是一个小错误也可能导致备份失败。如果您不太熟悉T-SQL并且不知道如何根据自己的需求进行修改,我建议您尝试更简单的方法,比如可视化管理软件。这种方法更加方便,最重要的是,您只需点击几下就可以轻松更改设置。我认为傲梅企业备份网络版是一个很好的解决方案,原因如下:

  • 更改压缩级别:您可以调整备份的压缩级别。压缩级别越高,备份文件的大小就越小。
  • 跨局域网备份/传输:与SSMS不同,傲梅企业备份网络版可以帮助您在局域网内完成多台台式计算机、笔记本电脑、工作站和服务器的备份。
  • 备份计划:您可以设置自动备份任务,定期在指定的时间段内备份您的数据库。
  • 集中备份功能:除了SQL数据库,它还支持文件、分区、磁盘和操作系统的备份。

如何使用傲梅企业备份网络版启用SQL Server备份数据库压缩

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

1. 打开软件并点击计算机,然后选择安装客户端程序以安装代理程序包。

安装客户端程序

2. 在开始之前,您需要请求要备份的计算机的控制权。点击计算机,然后选择不受控制的计算机,在正确的IP上右键单击并选择请求控制

请求控制

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

4. 点击任务,然后选择新任务,再选择SQL Server备份。您将看到3个步骤。

SQL Server 备份

5. 在步骤1中,点击添加计算机,然后选择您的客户端计算机的正确IP。

添加计算机

6. 步骤2是最重要的,它使软件强大且独特。您可以在此步骤中选择多个实例和数据库进行备份。

日程设置

概括

在本文中,我不仅介绍了如何使用SQL Server脚本进行压缩备份数据库,还提供了一个更简单方便的选择:傲梅企业备份网络版。

相比复杂繁琐的SQL脚本,傲梅企业备份网络版提供了更直观易用的界面,让备份过程变得轻松而高效。关于