本文介绍如何配置 Microsoft Azure 备份服务器(MABS)来保护 Azure Stack 上的 SQL Server 数据库。
SQL Server 数据库保护工作流
SQL Server 数据库备份到 Azure 和从 Azure 恢复的管理包括:
- 创建备份策略以保护 SQL Server 数据库
- 创建按需备份副本
- 从磁盘和 Azure 恢复数据库
支持的方案和限制
在 Azure Stack 上备份 SQL Server 之前,请查看以下受支持的方案和限制:
- 如果数据库的文件位于远程文件共享上,保护将失败,并显示错误 ID 104。 MABS 不支持对远程文件共享上的 SQL Server 数据进行保护。
- MABS 无法保护存储在远程 SMB 共享上的数据库。
- 确保可用性组副本配置为只读。
- 必须将系统帐户 NTAuthority\System 显式添加到 SQL Server 上的 Sysadmin 组中。
- 在为部分包含的数据库执行备用位置恢复时,你必须确保目标 SQL 实例启用了包含的数据库功能。
- 在为文件流数据库执行备用位置恢复时,你必须确保目标 SQL 实例启用了文件流数据库功能。
- 对 SQL Server Always On 的保护:
- MABS 在创建保护组时运行查询以检测可用性组。
- MABS 会检测故障转移,并继续保护数据库。
- MABS 支持 SQL Server 实例的多站点群集配置。
- 保护使用 AlwaysOn 功能的数据库时,MABS 具有以下限制:
- MABS 将遵循 SQL Server 中基于备份首选项设置的可用性组的备份策略,如下所示:
- 首选辅助副本 - 除了主副本是唯一在线副本的情况之外,备份应在辅助副本上进行。 如果有多个次要副本可用,则将选择具有最高备份优先级的节点进行备份。 如果只有主要副本可用,则应在主要副本上进行备份。
- 仅限辅助副本 - 不应在主要副本上执行备份。 如果主副本是唯一在线副本,则不应进行备份。
- 主副本 - 备份应始终在主副本上进行。
- 任意副本 - 备份可以在可用性组中的任何可用性副本上进行。 将根据每个节点的备份优先级来确定要从中备份的节点。
-
注释
- 可从任何可读副本(也就是主要副本、同步次要副本、异步次要副本)进行备份。
- 如果备份中排除了任何副本,例如“排除副本”已启用或标记为不可读,则在任何选项下都不会选择该副本进行备份。
- 如果有多个副本可用且可读,则将选择具有最高备份优先级的节点进行备份。
- 如果备份在所选节点上失败,则备份操作将失败。
- 不支持恢复到原始位置。
- MABS 将遵循 SQL Server 中基于备份首选项设置的可用性组的备份策略,如下所示:
- SQL Server 2014 或更高版本的备份问题:
- SQL Server 2014 添加了一项新功能, 用于为 Azure Blob 存储上的本地 SQL Server 创建数据库。 MABS 不能用于保护此配置。
- SQL Always On 选项的“首选次要副本”备份首选项存在一些已知问题。 MABS 始终从次要副本创建备份。 如果找不到次要副本,则备份将失败。
先决条件
在 Azure Stack 上备份 SQL Server 之前, 请安装和准备 Azure 备份服务器。
创建备份策略
若要创建备份策略来保护 SQL Server 数据库到 Azure,请执行以下步骤:
在 Azure 备份服务器上,选择 “保护 ”工作区。
在工具菜单上,选择“ 新建 ”以创建新的保护组。
Azure 备份服务器启动保护组向导,该向导可引导你创建 保护组。 选择“下一步”。
在 “选择保护组类型 ”边栏选项卡上,选择 “服务器”。
在 “选择组成员” 边栏选项卡上,“可用成员”列表显示各种数据源。 选择 + 以展开文件夹并显示子文件夹。 选中复选框以选择项。
所有选定项都显示在“选定成员”列表中。 选择要保护的服务器或数据库后,选择“ 下一步”。
在 “选择数据保护方法” 边栏选项卡上,提供保护组的名称,然后选择 “我需要联机保护 ”复选框。
在 “指定 Short-Term 目标”面板中,输入创建备份点到磁盘所需的信息,然后选择下一步。
在此示例中, 保留期为5 天, 同步频率 每 15 分钟一次,这是备份频率。 快速完整备份 设置为 晚上 8:00。
注释
在所示的示例中,每天晚上 8:00,通过传输前一天晚上 8:00 备份点的修改数据来创建备份点。 此过程称为 快速完整备份。 事务日志每 15 分钟同步一次。 如果需要在下午 9:00 恢复数据库,则从最后一个快速完整备份点(在本例中为晚上 8 点)的日志创建该点。
在“ 查看磁盘分配 ”边栏选项卡中,验证可用的总存储空间以及潜在的磁盘空间。 选择“下一步”。
在 “选择副本创建方法”上,选择如何创建第一个恢复点。 可以手动(关闭网络)传输初始备份,以避免带宽拥塞或通过网络传输。 如果选择等待传输第一个备份,则可以指定初始传输的时间。 选择“下一步”。
初始备份副本需要将整个数据源(SQL Server 数据库)从生产服务器(SQL Server 计算机)传输到 Azure 备份服务器。 此数据可能很大,并且通过网络传输数据可能会超过带宽。 因此,可以选择传输初始备份: 手动 (使用可移动媒体)以避免带宽拥塞或 自动通过网络 (在指定时间)。
初始备份完成后,其余备份是初始备份副本上的增量备份。 增量备份往往比较小,能轻松地通过网络传输。
选择您希望何时执行一致性检查,然后选择下一步。
Azure 备份服务器对备份点的完整性执行一致性检查。 Azure 备份服务器会计算生产服务器(在本方案中为 SQL Server 计算机)上的备份文件和该文件的已备份数据的校验和。 如果存在冲突,则假定 Azure 备份服务器上的备份文件已损坏。 Azure 备份服务器会发送与校验和不匹配部分相对应的块来纠正备份的数据。 由于一致性检查是性能密集型的,因此可以计划一致性检查或自动运行它。
若要指定数据源的联机保护,请选择要保护到 Azure 的数据库,然后选择“ 下一步”。
选择适合组织策略的备份计划和保留策略。
在此示例中,备份每天在下午 12:00 和下午 8 点执行一次。
注释
最好在磁盘上提供一些短期恢复点,以便快速恢复。 这些恢复点适用于操作性恢复。 Azure 充当具有较高服务级别协议和保证可用性的良好异地存储位置。
最佳做法:如果将备份安排到 Azure 以在本地磁盘备份完成后启动,则始终将最新的磁盘备份复制到 Azure。
选择保留策略时间表。 有关保留策略工作原理的详细信息,请参阅 使用 Azure 备份替换磁带基础结构文章。
在本示例中:
- 备份每天在下午 12:00 和下午 8 点执行一次,并保留 180 天。
- 星期六中午 12 点的备份将保留 104 周
- 上个星期六中午 12 点的备份将保留 60 个月
- 三月最后一个星期六中午 12 点的备份将保留 10 年
选择 “下一步 ”,然后选择用于将初始备份副本传输到 Azure 的相应选项。 可以选择“自动通过网络”
在 “摘要” 边栏选项卡中查看策略详细信息后,选择“ 创建组 ”以完成工作流。 可以在“监视”工作区中选择“ 关闭 ”并监视作业进度。
运行按需备份
仅当发生第一个备份时,才会创建 恢复点 。 创建备份策略后,可以手动触发恢复点的创建,而不是等待计划程序执行备份。
若要运行 SQL Server 数据库的按需备份,请执行以下步骤:
在创建恢复点之前,请等待保护组的状态为 “确定”,以确保数据库正常。
右键单击数据库,然后选择“ 创建恢复点”。
在下拉菜单中选择 “联机保护 ”,然后选择“ 确定 ”开始在 Azure 中创建恢复点。
在 “监视 ”工作区中查看作业进度。
从 Azure 恢复数据库
若要从 Azure 恢复受保护的实体(SQL Server 数据库),请执行以下步骤:
打开 Azure 备份服务器管理控制台。 导航到 “恢复 ”工作区,可在其中查看受保护的服务器。 浏览所需的数据库(在本例中为 ReportServer$MSDPM2012)。 选择指定为“在线”点的一个“恢复开始”时间。
右键单击数据库名称并选择“恢复”。
MABS 显示恢复点的详细信息。 选择“下一步”。 选择恢复类型“恢复到 SQL Server 的原始实例”。 选择“下一步”。
在此示例中,MABS 将数据库恢复到另一个 SQL Server 实例或独立网络文件夹。
在指定恢复选项面板中,可以选择恢复选项,例如网络带宽使用限制选项以调节恢复过程使用的带宽。 选择“下一步”。
在 “摘要” 边栏选项卡上,可以看到到目前为止提供的所有恢复配置。 选择“恢复”。
恢复状态显示正在恢复的数据库。 可以选择“关闭”来关闭向导,并在“监视”工作区中查看进度。
恢复完成后,还原的数据库是应用程序一致的。