使用 Database Migration Service 转换 SQL

Database Migration Service 可帮助您将 Oracle 和 SQL Server 架构转换为 PostgreSQL。您可以使用转换工作区和由 Gemini 提供支持的转换功能来实现此目的。

转换工作区

使用转换工作区可加快并改进异构数据库的迁移过程。转换工作区可处理代码和架构转换,从而简化向目标数据库的转换。

它们提供的工具可让您通过强大的概览功能监控转换进度。 转换工作区还可帮助您在转换编辑器中协作解决转换问题,您可以在其中实时调整生成的 PostgreSQL 代码。

转换工作区屏幕,动画显示用户在三个不同的标签页之间点击:转换概览、转换问题和代码。
图 1. 转换工作区概览界面,您可以在其中监控转换进度、查看问题并检查生成的 PostgreSQL 代码。(点击可放大)
转换工作区屏幕,动画显示用户在三个不同的标签页之间点击:转换概览、转换问题和代码。

使用 Gemini 加快代码和架构转换

Database Migration Service 中由 Gemini 提供支持的转换功能可帮助您利用 AI 的强大功能,缩短迁移时间并降低迁移复杂性。

使用以下互补方法,获得由 Gemini 提供支持的完整端到端代码对象转换体验:

自动转换

依托 Gemini 的转换引擎可以自动增强 Database Migration Service 使用的确定性转换模式。启用自动转换功能后,Gemini 会处理所有已转换的架构,从而显著减少 PostgreSQL 代码中需要手动调整的数量。

所有增强操作完成后,您可以探索每个对象的详细信息:

  • 转换摘要包含 Gemini 如何以及为何修复确定性转换中发现的问题的概览,以及仍需进一步调整的问题列表。

  • 代码比较功能可让您对照比较 Gemini 增强的代码和确定性转换。

由 Gemini 提供支持的自动转换面板,其中包含有关对转换后的架构实施了哪些调整的详细信息。
图 2. Gemini 赋能的自动转换面板,您可以在其中检查代码和架构的详细信息。 (点击可放大)
由 Gemini 提供支持的自动转换面板,其中包含有关对转换后的架构实施了哪些调整的详细信息。

转换助手

转换助理是一组专用提示,可帮助您更好地了解转换逻辑、针对转换问题提出修复建议或优化转换后的代码。例如,如果某些 Oracle 函数在 PostgreSQL 中没有直接等效项,您可以使用帮我解决对象转换问题提示,获取可解决转换问题的代码更改建议。

下图展示了如何在转换工作区中访问 Gemini 提示词,以获取代码和架构转换的可解释性:

Gemini 转换助理提示,用于解释代码和架构转换的可解释性。
图 3. Gemini 转换助理提示。(点击可放大)
Gemini 提示词,用于代码和架构转换可解释性。

转化质量评估

Gemini 还会通过质量评估,帮助确保转换后代码的质量和功能等效性。这些评估会自动分析转换后的代码,以确保其正确性,并验证其行为是否与源代码相同。

您可以在转换过程中自动运行评估,也可以针对特定对象手动运行评估。结果会提供详细的质量报告,并指出任何潜在问题,帮助您更放心地进行迁移。此功能与自动转换和转换助手搭配使用,可提供更可靠的转换体验。

转化工作区中的 Gemini 转化质量报告面板。
图 4.Gemini 转换质量评估报告示例(点击可放大)
转化工作区中的 Gemini 转化质量报告面板。

模式匹配

当您在工作区中修正转换问题时,Gemini 模型可以从您的修正中学习模式,并针对工作区中的其他故障对象建议更改。例如,在您手动或通过转换助理提示修复对象转换问题后,当 Gemini 模型分析了足够多的修复后,您可以查看 AI 生成的建议,以进一步优化代码。

下图显示了 Gemini 建议如何修复转换工作区中的问题:

Gemini 建议修复问题对话框。
图 5. Gemini 建议修复问题对话框。 (点击可放大)
Gemini 建议修复问题对话框。

支持的场景

如需详细了解 Database Migration Service 转换工作区和由 Gemini 赋能的转换,请参阅以下页面:

Oracle to Cloud SQL for PostgreSQL
Oracle 到 AlloyDB for PostgreSQL
SQL Server 到 Cloud SQL for PostgreSQL
SQL Server 到 AlloyDB for PostgreSQL