SQLServer数据库差异备份

本文涉及的产品
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
云数据库 RDS SQL Server,基础系列 2核4GB
简介: 原文:SQLServer数据库差异备份差异备份 (differential backup)定义 一种数据备份,基于完整数据库或部分数据库或一组数据文件或文件组(差异基准)的最新完整备份,并且仅包含自确定差异基准以来发生更改的数据。
原文: SQLServer数据库差异备份

差异备份 (differential backup)定义

一种数据备份,基于完整数据库或部分数据库或一组数据文件或文件组(差异基准)的最新完整备份,并且仅包含自确定差异基准以来发生更改的数据。

使用SSMS数据库管理工具进行数据库差异备份

1、选择数据库-》右键点击-》选择任务-》选择备份。

2、在备份数据库弹出框中-》选择备份类型为差异-》然后删除系统生成的目标文件-》然后点击添加。

3、在选择备份目标弹出框中-》点击选择备份路径。

4、在定位数据库文件弹出框中,先选择需要备份的文件路径,然后数据备份文件名,点击确定。

 5、在备份数据库弹出框,点击确定。

6、查看备份是否成功。

使用SSMS数据库管理工具进行数据库差异还原

差异备份与还原须知:差异备份是上次完整备份之后发生改变的副本。所以还原是需要上次的完整备份和最近一次差异备份。差异备份有两步操作,第一步为还原数据库,第二步还原差异部分。

还原数据库步骤

1、选择数据库-》右键点击-》选择任务-》选择还原-》选择数据库。

2、在还原数据库弹出框中-》先点击设备-》再点击还原文件路径。

3、在选择备份设备弹出框中-》点击添加文件。

4、在定位备份文件弹出框中-》先选择文件夹-》再选择要还原的文件-》点击确定。

5、进入还原模式。

6、覆盖现有数据库可不勾选-》选择数据库恢复模式为设置为NORecorvery。

7、查看数据库状态。

还原差异文件步骤

1、选择要还原的数据库-》右键点击-》选择任务-》选择还原-》选择文件和文件组。

2、在还原文件和文件组弹出框-》选择设备-》选择文件还原路径。

3、在选择备份设备弹出框-》选择添加。

4、在定位备份文件弹出框-》选择要还原的差异文件-》点击确定。

5、在还原文件和文件组弹出框-》选择文件-》点击选项。

6、选择恢复状态-》点击确定。

7、还原结果。

使用T-SQL脚本进行差异备份

语法:backup database 数据库名 to disk=文件路径 with differential;

示例:backup database testss to disk='D:\SqlTest\backup\t3.bak' with differential;

使用T-SQL脚本进行差异还原

语法:第一步先指定数据库恢复模式:restore database 数据库名 from disk=数据库文件 with norecovery ;

           第二步再恢复差异备份:restore database 数据库名 from disk=差异文件 with recovery;
示例:第一步先恢复备份数据库:restore database testss from disk='D:\SqlTest\backup\testss.bak' with norecovery ;

           第二步再恢复差异备份:restore database testss from disk='D:\SqlTest\backup\t3.bak' with recovery;

           (注意数据库如果存在,可删除或者使用覆盖先有数据库)

 总结

优点:1、与创建完整备份相比,创建差异备份的速度可能非常快。 差异备份只记录自差异备份所基于的完整备份后更改的数据。 这有助于频繁地进行数据备份,减少数据丢失的风险。 但是,在还原差异备份之前,必须先还原其基准。 因此,从差异备份进行还原必然要比从完整备份进行还原需要更多的步骤和时间,因为这需要两个备份文件。

   2、如果数据库的某个子集比该数据库的其余部分修改得更为频繁,则差异数据库备份特别有用。 在这些情况下,使用差异数据库备份,您可以频繁执行备份,并且不会产生完整数据库备份的开销。

   3、在完整恢复模式下,使用差异备份可以减少必须还原的日志备份的数量。

缺点:差异备份基于最后一次完整备份的差异,那么,对于一个繁忙的数据库,在一段时间内做了几次差异备份,无论这中间有多少次Checkpoint,SQL Server依然将这些基于完整备份的差异页面放入差异备份文件,按道理来说,一个页面在一次Checkpoint之后,如果没有再发生任何修改,那么是不需要放入差异备份文件里面的(如果是基于最后一次差异的差异),因为差异位图无法基于差异的差异,这样会导致,有时候差异备份文件比完整备份文件还要大。

相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
目录
相关文章
|
29天前
|
存储 关系型数据库 MySQL
mysql数据库备份与恢复
MySQL数据库的备份与恢复是确保数据安全性和业务连续性的关键操作。
54 4
|
1月前
|
SQL 数据库
数据库数据恢复—SQL Server数据库报错“错误823”的数据恢复案例
SQL Server附加数据库出现错误823,附加数据库失败。数据库没有备份,无法通过备份恢复数据库。 SQL Server数据库出现823错误的可能原因有:数据库物理页面损坏、数据库物理页面校验值损坏导致无法识别该页面、断电或者文件系统问题导致页面丢失。
95 12
数据库数据恢复—SQL Server数据库报错“错误823”的数据恢复案例
|
1月前
|
关系型数据库 MySQL 数据库
Navicat备份数据库
涵盖`Navicat`数据库备份、数据安全及备份策略等主题。文库采用精美主题,提升阅读体验。
26 1
Navicat备份数据库
|
1月前
|
SQL 关系型数据库 MySQL
创建包含MySQL和SQLServer数据库所有字段类型的表的方法
创建一个既包含MySQL又包含SQL Server所有字段类型的表是一个复杂的任务,需要仔细地比较和转换数据类型。通过上述方法,可以在两个数据库系统之间建立起相互兼容的数据结构,为数据迁移和同步提供便利。这一过程不仅要考虑数据类型的直接对应,还要注意特定数据类型在不同系统中的表现差异,确保数据的一致性和完整性。
28 4
|
1月前
|
SQL 存储 数据管理
SQL Server数据库
SQL Server数据库
49 11
|
1月前
|
SQL 数据库 数据安全/隐私保护
如何手动备份数据库?
如何手动备份数据库?
81 1
|
1月前
|
关系型数据库 MySQL 网络安全
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
|
1月前
|
SQL 安全 数据库
基于SQL Server事务日志的数据库恢复技术及实战代码详解
基于事务日志的数据库恢复技术是SQL Server中一个非常强大的功能,它能够帮助数据库管理员在数据丢失或损坏的情况下,有效地恢复数据。通过定期备份数据库和事务日志,并在需要时按照正确的步骤恢复,可以最大限度地减少数据丢失的风险。需要注意的是,恢复数据是一个需要谨慎操作的过程,建议在执行恢复操作之前,详细了解相关的操作步骤和注意事项,以确保数据的安全和完整。
91 0
|
2月前
|
SQL 存储 数据库
SQL Server 中的备份类型详解
【8月更文挑战第31天】
58 0
|
2月前
|
SQL 存储 调度