IBM Cloud Docs
迁移注意事项

迁移注意事项

Microsoft SQL Server 数据库支持多种方法将现有 SQL Server 数据库迁移到 IBM Cloud VPC。 本文档不深入介绍迁移,但讨论了一些方法,以允许您根据需求和后续评估选择一个或多个方法。

  • 本机 SQL Server 备份/复原。
  • 事务复制。
  • 数据库镜像。
  • 日志装运。
  • 始终在可用性组上。
  • 始终在分布式可用性组上。

迁移中需要除数据移动以外的其他注意事项,例如:

  • 正在新服务器上重新创建 SQL 作业。
  • 在新服务器上重新创建登录。
  • 数据加密。
  • 复制期间的恢复选项。
  • 要传输的数据量。
  • 当前软件版本和版本中提供的功能。

本机 SQL Server 备份/复原

Microsoft SQL Server 数据库支持使用完全和差分备份 (.bak) 文件或差分复原和日志复原的本机备份和复原操作。 使用本机 .bak 文件是备份和复原 SQL Server 数据库的最简单方法,也是实例中单个或多个数据库的简单迁移方法。 将获取现有服务器上数据库的完全备份并将其复制到 IBM Cloud Object Storage 存储区。 然后,在 IBM Cloud VPC中的 SQL Server 数据库实例虚拟服务器上,通过具有 s3fs克隆 和 SMB\Samba 共享的登台服务器将其复原。

事务复制

事务复制支持在一个数据库和另一个数据库之间传输更改。 这些更改可以包括: 数据,表,存储过程,视图等。 该体系结构由以下内容组成:

  • Publisher-发布数据的主数据库。
  • 订户-接收复制数据的辅助数据库。
  • 分发器-存储用于事务复制的元数据和事务的服务器,理想情况下是发布者或订户的单独服务器。

此过程的工作方式如下所示:

  • 事务复制会在发布数据库中创建对象和数据的快照,并将其发送到订户数据库。 快照将应用于订户数据库。
  • 在发布程序上进行的数据更改和模式修改将按照它们发生的顺序发送到订户,并以相同的顺序应用于订户。
  • 当两个数据库同步并在维护窗口中时:
    • 停止对发布程序的任何访问。
    • 确保复制已完成。
    • 删除预订。
    • 启用对订户的访问权。
    • 停止发布者的工作。

请参阅 事务复制 以获取更多信息。

数据库镜像

在 SQL Server 2012 中不推荐使用数据库镜像,但是,在 SQL 2019 文档中仍引用了数据库镜像,请参阅 SQL Server中的数据库镜像。 此处讨论了迁移方法的完整性,但是,如果要在迁移中使用此方法,请仔细研究此方法。

SQL Server 中的数据库镜像允许您在备用服务器上保留 SQL Server 数据库的副本或镜像。 镜像可确保数据的两个独立副本始终存在。 与日志发送相比,数据库镜像要设置得更复杂一点,它有更多的限制。 如果伙伴关系中的两个服务器都位于同一 Windows 域中,那么更容易设置数据库镜像,但如果情况并非如此,那么可以使用证书进行端点认证。 迁移的基本步骤包括:

  • 配置数据库镜像。
  • 在所需的中断时间,停止正在主服务器上使用主体数据库的应用程序。
  • 确保每个数据库处于同步状态。
  • 对每个镜像用户数据库进行故障转移。
  • 除去镜像伙伴关系。
  • 将应用程序重定向到新的数据库服务器。
  • 停用原始服务器。

日志装运

可以在数据库级别配置 SQL Server 日志发送,在指定的时间段内,将执行 SQL Server 事务日志备份并将其复制到目标服务器并进行复原。 事务日志包含 SQL Server 数据库中发生的所有事务的日志。 从中提供事务日志备份的 SQL Server 实例称为主实例,而将事务日志备份交付到的 SQL Server 实例称为辅助实例。 在配置日志发送之前,数据库必须处于完全恢复模型或批量记录方式。

SQL Server 事务日志备份设置允许寻址到网络路径,并且可以定义备份作业调度程序来运行备份作业,缺省情况下,此设置是每 15 分钟运行一次备份作业。 一旦调度了数据库备份,它就会创建一个需要在辅助服务器上恢复的数据库完全备份。 在维护时间内,可以执行从主服务器到辅助服务器的切换,禁用日志发送,并停用主服务器。

始终在可用性组上

SQL Server "始终开启" 可用性组提供高可用性和灾难恢复解决方案,并且在 SQL Server 2012 及更高版本中可用。 此功能可用于将现有 SQL Server 数据库迁移到 IBM Cloud ,只需最短的停机时间。 如果您具有具有 "始终开启" 可用性组的现有 Windows Server Failover Cluster ,那么可以在迁移期间通过创建具有异步复制的其他辅助副本来临时扩展该集群。 在维护窗口期间,可以执行手动故障转移以启用切换。

始终在分布式可用性组上

SQL Server "始终开启" 分布式可用性组跨两个不同的可用性组。 在两个不同的 Windows Server 故障转移集群 (WSFC) 上配置每个可用性组,一个在源位置,一个在 IBM Cloud VPC中。 只要操作系统和 SQL Server 版本能够支持 WSFC 和可用性组,它们就不必是同一版本。 此迁移方法适用于重新托管任务关键型 SQL Server 数据库。 分布式可用性组体系结构是一种高效的数据传输方法,因为主副本仅在 IBM Cloud中传输转发器副本数据,然后转发器负责将数据与 IBM Cloud中的辅助副本同步。 典型体系结构如下所示:

  • 源 WSFC 集群托管一个 "始终开启" 可用性组,并且具有两个节点,并使用同步复制和自动故障转移。
  • 在 IBM Cloud 中托管的目标 WSFC 集群具有一个 "始终在线" 可用性组,具有两个节点,一个位于多专区区域 (MZR) 中的可用性专区 (AZ) 中,并使用同步复制和自动故障转移。
  • 网络连接,通常是直接链路连接连接两个集群。
  • 配置了 "始终在线" 分布式可用性组,并将数据从源 WSFC 集群的主副本传输到目标 WSFC 集群中的主副本 (转发器)。
  • 转发器负责将数据传输到目标 WSFC 集群中的辅助副本。

在维护窗口期间,可以执行手动故障转移以启用切换,并且目标 WSFC 中的主数据库将成为从应用程序进行读/写访问的源。

有关更多信息,请参阅 分布式可用性组