SQL Server 数据库之备份和恢复数据库

1. 概述

在一些对数据可靠性要求很高的行业,若发生意外停机或数据丢失,其损失是十分惨重的;
数据库管理员应针对具体的业务要求指定详细的数据库备份与灾难恢复策略,并通过模拟故障对每种可能的情况进行严格测试,只有这样才能保证数据的高可用性;
数据库的备份是一个长期过程,而恢复只在发生事故后才能进行,恢复后可看做是备份数据库的逆过程,恢复程度的好坏很大程度上依赖于备份的情况;
数据库管理员在恢复时采取的步骤正确与否也会直接影响最终的恢复结果;

2. 备份类型

备份数据库是指对数据库或事务日志进行复制,当系统,磁盘或数据库文件损坏时,能使用备份文件进行恢复,防止数据丢失;
SQL Server 数据库备份支持以下几种类型,分别应用于不同的场合:

  1. 仅复制备份
    独立于正常 SQL Server 备份序列的特殊用途备份;

  2. 数据备份
    完整数据库的数据备份(数据库备份)、部分数据库的数据备份(部分备份)或一组数据文件或文件组的备份(文件备份);

  3. 数据库备份
    数据库的备份,完整数据库备份表示备份完成时的整个数据库;差异数据库备份植保会自最近完整备份以来对数据库所做的更改;

  4. 差异备份
    基于完成数据库或部分数据库以及一组数据文件或文件组的最新完整备份的数据备份(“差异基准”),仅包含自差异基准以来发生了更改数据区;部分差异备份仅记录自上一次部分备份(称为“差异基准”)以来文件组中发证更改的数据区;

  5. 完整备份
    一种数据备份,包含特定数据库或者一组特定的文件组或文件中的所有数据,以及能恢复这些数据的足够的日志;

  6. 日志备份
    包括以前日志备份中未备份的所有日志记录的事务日志备份,完整恢复模式;

  7. 文件备份
    一个或多个数据库文件或文件组的备份;

  8. 部分备份
    仅包含数据库中部分文件组的数据(包含主要文件组、每个读/写文件组以及任何可选指定的只读文件中的数据);

3. 恢复模式

恢复模式在控制事务日志维护,提供给用户选择;SQL Server 数据库中有3中恢复模式:简单恢复模式、完全恢复模式、大容量日志恢复模式;
通常,数据库使用完全恢复模式或简单恢复模式;

3.1 简单恢复模式

简单恢复模式能最大限度地减少事务日志的管理开销,因为它不备份事务日志;若数据库损坏,则简单恢复模式将面临极大的工作丢失风险,数据只能恢复到已丢失数据的最新备份
所以,在简单恢复模式下,备份间隔应尽可能短,以防止大量丢失数据,但,间隔的长度应该足以避免备份开销影响生产工作;在备份策略中加入差异备份有助于减少开销;
对于用户数据库,简单恢复模式用于测试和开发数据库,或用于主要包含只读数据的数据库(如数据仓库);简单恢复模式并不适用生产系统,因为对于生产系统来说,丢失最新的更改是无法接受的,在这种情况下建议使用完全恢复模式;

3.2 完全恢复模式和大容量日志恢复模式

相对于简单恢复模式,完全恢复模式和大容量日志恢复模式提供了更强的数据保护功能;这些恢复模式基于备份事务日志来提供完整的可恢复性及在最大范围的故障情形内防止丢失工作;

  1. 完全恢复模式
    完全恢复模式需要日志备份;此模式完整记录所有事务,并将事务日志记录保留到对其备份完毕为止;若能够在出现故障后备份日志尾部,就能使用完全恢复模式将数据库恢复到故障点;完全恢复模式也支持还原单个数据页;

  2. 大容量日志恢复模式
    大容量日志记录大多数大容量操作,他只用在完全恢复模式的附加模式;对于某些大规模大容量操作(如大容量导入或索引创建),暂时切换到大容量日志恢复模式可提供性能并减少日志空间使用量;与完全恢复模式相同,大容量日志恢复模式也能将事务日志记录保留到对其备份完毕为止;

注意: 由于大容量日志恢复模式不支持时点恢复,所以必须在增大日志备份与增加工作丢失风险之间进行权衡;

4. 备份数据库

为了方便用户,SQL Server 数据库支持用户在数据库在线并正在使用时进行备份;
但,存在以下限制:

  1. 无法备份脱机数据; 隐式或显式引用脱机数据的任何备份操作都会失败;即使一个或多个数据文件不可以,日志备份也能成功;

注意: 若某个文件包含大容量日志恢复模式下所作的大容量日志更改,则所有文件都必须处于联机状态才能成功备份;

  1. 备份过程中的并发限制; 数据库仍在使用时,SQL Server 能使用联机备份过程来备份数据库;在备份过程中,能进行多个操作;但,若正在创建或删除数据库文件时尝试启动备份操作,则备份文件将等待,直到创建或删除完成或备份超时;

若备份操作与文件管理操作或收缩操作重叠,就会发生冲突;无论哪个冲突操作首先开始,第二个操作总会等待第一个操作设置的锁超时(超时期限由会发超时设置控制);若在超市期限内释放锁,第二个操作将继续执行;若锁超时,则第二个操作失败;

使用 SSMS 继续备份的过程如下:

  1. 右击要备份的数据库,任务备份20220322

  2. 先删除,再添加;2022032220220322

  3. 在弹出的选择备份目标对话框汇总,选择好备份的路径;文件类型选择备份文件文件名 填写需要备份的数据库的名称,最好在备份的数据库的名称后加上日期,方便以后查找,再连续单击确定,即可完成备份;20220322
    20220322
    20220322

5. 恢复数据库

数据库完整还原的目的还是还原整个数据库,真个数据库在还处于脱机状态
在数据库的任何部分变成联机之前,必须将所有数据恢复之前,必须将所哟数据恢复到同一点,即数据库的所有部分都处于同一时间点并不存在未提交的事务;
简单恢复模式下,数据库不能还原到特定备份中的特定时间点;
完整恢复模式下,还原备份数据库之后,必须还原所有后续的事务日志备份,再恢复数据库,能将数据库还原到这些日志备份之一的特定恢复点;恢复点可以是特定的日期和时间、标记的事务或日志序列号,还原数据库时,特别是在完整恢复模式大容量日志恢复模式下,应使用一个还原顺序;
注意: 还原顺序由通过一个或多个还原阶段来移动数据的一个或多个还原操作组成;

用 SSMS 对象管理资源管理器恢复数据库,操作步骤如下:

  1. 展开数据库,根据具体的数据库选择一个用户数据库,或展开系统数据库并选择一个系统数据库;右击数据库,单击还原数据库20220322
  2. 常规,使用部分指定要还原的备份集和位置;在目标部分,数据库文本框自动填充要还原的数据库的名称;
    若要更改数据库名称,可在数据库文本框中输入新名称;
    还原到框中,保留默认选项至最近一次进行的备份,或单击时间线访问备份时间线,以手动选择要停止恢复的时间点;
    20220322
    20220322
    20220322
  • 21
    点赞
  • 183
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: SQL Server数据库备份是将数据库中的数据和对象复制到另一个位置,以便在需要时可以恢复数据。备份可以在不同的介质上进行,如磁盘、磁带或网络共享文件夹。备份可以是完整的、差异的或事务日志的。完整备份包括整个数据库,差异备份包括自上次完整备份以来发生的更改,而事务日志备份包括数据库中的所有事务日志。 SQL Server数据库恢复是将备份的数据和对象还原到数据库中。恢复可以是完整的、部分的或点恢复的。完整恢复是将完整备份和所有差异备份和事务日志备份还原到数据库中。部分恢复是将某些文件组或文件还原到数据库中。点恢复是将数据库还原到某个特定的时间点。 备份恢复SQL Server数据库管理中非常重要的任务,可以保护数据库免受数据丢失和损坏的影响。在备份恢复过程中,需要考虑备份的类型、备份的位置、备份的频率、备份的保留期、恢复的类型和恢复的时间等因素。 ### 回答2: SQL Server是一种关系型数据库管理系统,为了保护数据库中的数据和应对可能出现的数据损坏情况,及时进行数据库备份是非常必要的。数据库备份是指将数据库存储在磁盘或磁带等介质上,以便在需要恢复数据时能够快速恢复SQL Server提供了多种备份方式,包括完整备份、差异备份、日志备份和文件和文件组备份。完整备份是指将整个数据库备份,因此可以恢复整个数据库。差异备份和日志备份是对完成完整备份后的增量备份,以保证数据的最新性。文件和文件组备份是对某一数据库的文件或数据库一部分的文件进行备份,以便某些数据的恢复数据库恢复是指在数据丢失或数据损坏时,通过备份将数据重新还原到正常状态的过程。要进行SQL Server数据库恢复,需要首先将数据库置为单用户模式,然后恢复到最新备份,最后将数据库转为多用户模式。整个过程需要注意备份恢复的时间,确保能够在用户需求的时间内完成。 SQL Server还提供了许多选项和设置,以提高备份恢复的可靠性和性能。一些常见的设置包括压缩备份、去除旧备份备份过期等。这些设置可以根据具体需求进行调整。 总之,SQL Server数据库备份恢复是非常重要的,需要在数据存储的任何环节中加以考虑。备份恢复的正确性和有效性可以保证数据的安全和完整性,为企业和用户带来更多的价值和信心。 ### 回答3: SQL Server 数据库备份是指将数据库中的所有数据和对象复制到另一个位置,以防止意外删除、硬件损坏、病毒攻击等情况导致数据丢失。SQL Server 数据库备份方法主要有以下几种: 1. 完全备份(Full Backup):将整个数据库备份到另一个位置,包括所有数据和对象。 2. 差异备份(Differential Backup):只备份从上一次完全备份后的修改数据,可以节省备份时间和空间。 3. 事务日志备份(Transaction Log Backup):备份数据库的日志文件,可以用来还原到某个特定时间点的状态。 SQL Server 数据库恢复方法主要有以下几种: 1. 完全恢复(Full Recovery):使用完全备份和所有事务日志备份来还原数据库。 2. 简单恢复(Simple Recovery):只使用最新的完全或差异备份恢复数据库。 3. 坏块恢复(Piecemeal Restore):只恢复部分数据库,如只恢复某个表空间或文件组。 在执行备份恢复操作时,需要注意以下事项: 1. 数据库备份需要进行定期的计划,备份文件的存储位置要保证安全可靠,备份过程中不能影响数据库的正常运行。 2. 恢复操作需要谨慎,精确还原到需要的时间点,破坏生产环境的可能性要尽量避免。 3. 数据库备份恢复需要进行测试,以确保备份恢复方案的可靠性。实施合适的备份恢复方案,可以减少数据丢失的可能性,保障系统的稳定性和可靠性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值