什么是数据库迁移?

数据库迁移涉及将数据库中包含的数据 [包括架构对象(表、索引、视图)、存储过程、函数和触发器] 从现有数据库移动到新数据库或更新后的数据库。

您可能会出于各种原因需要迁移数据库,例如提高性能、降低费用、增强安全性或采用分析或 AI 等技术。

准备好开始了吗?了解 Database Migration Service 并将您的数据库迁移到 Google Cloud。

数据库迁移与数据迁移有何不同?

数据迁移是数据库迁移过程的一个组成部分,即将数据从一个环境移动到另一个环境。您可能需要在不迁移数据库的情况下移动数据,例如在进行与存储相关的更改时。

数据和数据库成功迁移的关键在于准确快速地转移信息,同时最大限度地减少转移和割接期间的停机时间和中断。

同构迁移与异构迁移

数据库引擎也称为数据库管理系统 (DBMS),是用于管理基本数据库操作并与软件应用交互的软件。

同构迁移是指迁移自的数据库(来源)与要迁移到的数据库(目标)的引擎相同或非常相似的情况。异构迁移描述了目标数据库引擎与源数据库引擎存在显著差异的情况。

迁移的复杂性很大程度上取决于源数据库和目标数据库之间的差异。异构迁移需要进行架构和代码转换,将它们重写为目标数据库语言。如需管理迁移的复杂性(例如管理为需要转换的源数据库编写的应用代码),可以使用数据库迁移服务

许多公司愿意投资一个长期或复杂的数据库迁移项目,以便获得现代数据库引擎带来的长期收益。

数据迁移策略

迁移数据有 4 种常用策略。如需深入探究并了解推荐的策略,请参阅云迁移策略

  • 更换主机:直接原样迁移。这是迁移数据的最简单方法,即将现有数据库的完整副本(通常与应用栈的其余部分一起)复制到另一个环境中。[同构]
  • 更换平台:迁移并优化。此策略会复制数据库、应用和虚拟机,然后针对新的云环境对其进行优化。这可能是异构迁移,例如从商业数据库迁移到与 PostgreSQL 兼容的数据库(如 AlloyDB)时。[同构/异构]
  • 重构:迁移并改进。重构云迁移策略意味着迁移应用并将其重新设计为云原生应用,包括应用更改。[通常是异构]
  • 重新构建。重新构建云迁移策略会完全为云重写架构和应用。根据您的应用,这可能比重构费用低。[通常是异构]

迁移到云端的好处

虽然您几乎可以在任何两个位置之间迁移数据库,但大多数迁移都是从本地迁移到云或从一个云迁移到另一个云。

公司迁移到云(或迁移到其他云服务提供商)的原因有很多:

  • 加快应用开发速度
  • 提升性能和可伸缩性
  • 节约费用
  • 安全性
  • 各种功能,特别是与 AI 相关的功能
  • 传统许可数据库常见的本地资本支出 (CapEx) 向云服务常见的运营支出 (OpEx) 的转变

详细了解迁移到云的好处。

理想情况下,数据库迁移不是您的公司经常执行的流程。为了充分利用迁移,请考虑以下几个关键问题:

  • 您的新架构能否扩缩以满足未来业务增长的需求?
  • 迁移对经营活动有何影响?您能否最大限度地减少停机时间和中断?
  • 新系统的总体费用是多少?结合新基础设施/服务的每月费用/节省的金额,考虑迁移费用。

数据迁移最佳实践

数据和数据库迁移可能很复杂。务必要确保企业的数据及其组织和功能无缝迁移到新架构。如果操作不当,您可能会遇到数据丢失、工作负载无法正常运行或安全问题。

一些最佳实践:

  • 了解您的数据。请务必了解具体业务场景和应用的需求。
  • 评估业务的发展方向。如需选择合适的架构和提供商,请务必考虑扩缩。
  • 根据您的具体情况选择合适的数据迁移策略
  • 请仔细遵循数据迁移计划,确保获得最佳性能。

注意事项:

  • 您应首先迁移哪些数据库和应用?
  • 您是否应该保留相同的数据模型(例如关系型),或者您的应用场景是否可通过更改数据模型获益?
  • 您是应该继续使用同一数据库引擎,还是改用其他数据库引擎?
  • 您应该在内部迁移数据库还是聘请外部服务提供商?
  • 您应该使用哪些数据库迁移服务和其他工具?
  • 生成式 AI 可以帮助您迁移吗?
  • 您应该自行管理新数据库,还是选择托管式服务?

迁移所经历的阶段数量取决于组织的现有设置和时间表。例如,只需一步即可完成从自行管理的本地部署到托管式云服务的迁移。或者,如果您有时间压力,则可以先迁移到自行管理的云端数据库,然后再改用全托管式解决方案。

如果是异构数据库迁移,请考虑是将转换与上述某个步骤合并,还是稍后转换。

制定成功的数据迁移计划的 4 个步骤

如需深入了解此过程,请参阅数据迁移的概念和原则以及设置和执行数据迁移过程

虽然详细内容会因具体业务场景而异,但以下基本步骤有助于您成功完成迁移:

  1. 确定您的所有数据目前位于何处、采用的格式以及迁移后的数据应位于何处。您可以确定自己不需要迁移所有数据,并且可以归档或删除旧数据。这也是注意迁移的潜在风险的关键时刻。
  2. 规划迁移策略。确定哪种迁移策略最适合,决定是否可以在工作时间内停机,并设置预算。
  3. 执行迁移。您可能需要使用迁移服务来实现。
  4. 在割接之前测试新系统。这样,您就可以找出任何无法正常运行的工作负载并解决所有问题。您可能需要同时运行这两个数据库,需要将数据从一个系统复制到另一个系统。只有在确认所有工作负载都按预期在新数据库上运行后,您才能关闭旧系统。

迁移数据库后,您需要继续优化以保持最佳性能。考虑使用全托管式数据库服务。

从本地迁移到云的特殊注意事项

出于上述原因,许多组织正在将其本地工作负载迁移到云。与云到云迁移相比,从本地迁移需要注意额外事项。

迁移本地工作负载的常见策略是更换主机,也就是将整个工作负载复制到云。这样做可获享与云迁移相关的安全性、可靠性和成本效益。但是,此策略也会将任何现有的低效问题从本地架构转移到云基础设施。因此,此策略会导致您错失与云原生架构相关的更多费用节省和更高的效率。您可能还会错过云在灾难恢复、分析集成、AI/机器学习服务以及合作伙伴产品市场等领域的丰富功能。

请务必在迁移过程中保持数据的安全性,特别是在不同类型的环境之间。确保最佳安全性的一种方式是使用可信的数据库迁移服务。

迁移数据库需要多长时间?

这可能需要几天到几个月的时间,因此请务必做好规划。考虑因素包括数据库大小、迁移策略以及您是否使用的是数据库迁移服务。

使用数据库迁移服务的好处

数据库迁移不仅仅是移动数据,还可以保留功能,使您的工作负载顺畅地在新系统上运行。具体如何迁移取决于您编写的代码和迁移工具。

数据库迁移服务的好处包括:

  • 无缝转移数据
  • 传输中的数据安全且经过加密
  • 整体转移速度更快
  • 停机时间缩短
  • 数据一致性
  • 节省了总体开支

随着生成式 AI 对企业工作负载的重要性日益突出,云服务提供商正使用 Gemini 等大语言模型 (LLM) 提供依托 AI 技术的数据库引擎之间的转换

请与您选择的云服务提供商联系,了解他们是否提供数据库迁移服务。

更进一步

获享 $300 赠金以及 20 多种提供“始终免费”用量的产品,开始在 Google Cloud 上构建项目。