迁移是将数据和元数据从源数据库移动到目标数据库的过程。迁移完成后,目标数据库将成为依赖应用可以读取和写入的主数据库,并且可以关闭源数据库。
Database Migration Service 可帮助您将数据迁移到 Google Cloud。该服务支持将数据库迁移到 Cloud SQL 和 AlloyDB for PostgreSQL 实例。Database Migration Service 可简化网络配置、管理初始快照和持续复制,并在整个迁移过程中提供状态更新。
借助 Database Migration Service,您可以:
下图展示了 Google Cloud 架构中 Database Migration Service 的主要功能:
迁移类型
迁移可分为以下几种类型:
持续迁移
持续(有时称为持续或在线)迁移是指在初始完全转储和加载之后,从来源到目标的持续更改流。当目标位置准备好进行读写操作时,您需要完成来源和目标位置之间的复制。然后,目标 Cloud SQL 实例或 AlloyDB for PostgreSQL 集群便可用作独立主实例。在来源和目标同步时进行切换,可最大限度地减少停机时间。
一次性迁移
一次性迁移是数据库的单个时间点快照。Database Migration Service 会从源数据库中获取快照,并将其应用于目标数据库。此过程是转储和加载,其中目标在加载完成后即可使用。在迁移过程中,任何依赖于源数据库的应用都可能会遇到停机,因为在迁移过程中无法向此数据库写入新数据。
同构迁移
同构迁移是指在采用同一数据库技术的数据库之间迁移数据。例如,从 MySQL 迁移到 Cloud SQL for MySQL。
如需了解详情,请参阅 同构迁移。
异构迁移
与同构迁移不同,在异构迁移(例如从 Oracle 迁移到 Cloud SQL for PostgreSQL)中,来源和目标的数据库技术不同。
如需了解详情,请参阅 异构迁移。
最短停机时间
Database Migration Service 支持同构和异构迁移的低停机时间、持续、无服务器迁移。Database Migration Service 的无服务器架构会截取源数据库的初始快照,以捕获数据的当前状态。快照完成后,Database Migration Service 会将快照加载到目标数据库,并开始持续数据复制。数据复制是一项持续的操作,因为它会实时跟踪和复制对原始数据库所做的任何更改。它基于变更数据捕获 (CDC),该过程仅识别和捕获在初始快照创建后对数据库所做的更改,例如插入、更新、删除。
这种方法可最大限度地减少停机时间,原因如下:
- 持续复制比频繁复制整个数据库更高效,因为它只关注修改。
- 在源数据库保持运行的同时迁移数据。
- 无服务器迁移在大规模下具有出色的性能。
使用 Gemini 加快代码和架构转换
对于异构迁移,Database Migration Service 会将源数据库中的架构和对象转换为与目标数据库兼容的格式。转换工作区提供以下功能:
- 创建转换工作区后,系统会自动执行初始架构转换。
- 交互式 SQL 编辑器,可帮助您解决转换问题或调整架构,以更好地满足您的需求。
- Gemini 转换功能的辅助。
- 可用于替换自动架构转换规则的自定义指令。
如需了解详情,请参阅 由 Gemini 赋能的转换。
安全和加密
Database Migration Service 通过使用 SSL/TLS 证书加密网络连接和客户管理的加密密钥 (CMEK) 来安全地迁移数据,以实现持续迁移。
如需了解详情,请参阅 安全和加密。
可观测性指标
Database Migration Service 会显示多个图表,可帮助您了解迁移作业的当前状态和进度。在大多数迁移场景中,您可以针对迁移作业中包含的每个数据库过滤这些图表中的信息。
如需了解详情,请参阅适用于您的迁移场景的迁移作业指标页面。
使用场景
Database Migration Service 支持以下应用场景:
- 直接原样迁移到代管式服务
- 在组织迁移到 Google Cloud的过程中,您可以从基于虚拟机的自托管数据库迁移到托管式数据库云服务。这样,您就可以专注于在托管式服务上运行数据库的高可用性、灾难恢复和性能,而不是管理基础架构。
- 多云持续复制
- 与跨区域的读取副本非常相似,如果数据存在于其他云服务商中,迁移作业可以持续将数据库复制到Google Cloud ,以实现多云读取可用性。Database Migration Service 不支持双重写入场景,即同时向来源和目标位置写入数据以及从来源和目标位置读取数据。
后续步骤
详细了解可用的迁移场景:
- 同构迁移
- 异构迁移