使用和将 Oracle 数据库迁移到 Amazon Redshift AWS DMS AWS SCT - AWS Prescriptive Guidance

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用和将 Oracle 数据库迁移到 Amazon Redshift AWS DMS AWS SCT

由 Piyush Goyal (AWS) 和 Brian motzer () 创作 AWS

源:Oracle

目标:Redshift

R 类型:重构

环境:生产

技术:迁移;分析;数据库

工作负载:Oracle

AWS服务:亚马逊 Redshift;AWSDMS

Summary

此模式为使用AWS数据库迁移服务 () 和AWS架构转换工具 () 将 Oracle 数据库迁移到亚马逊网络服务 (AWS) 云中的 Amazon Redshift 云数据仓库提供了指导。AWS DMS AWS SCT该模式涵盖本地或安装在亚马逊弹性计算云 (AmazonEC2) 实例上的源 Oracle 数据库。它还涵盖了适用于 Oracle 数据库的亚马逊关系数据库服务 (AmazonRDS)。

先决条件和限制

先决条件

产品版本

  • 对于自行管理的 Oracle 数据库,AWSDMS支持 10.2 及更高版本(适用于版本 10)的所有 Oracle 数据库版本。 x)、11g 以及最高 12.2、18c 和 19c。对于AWS管理的 Amazon RDS for Oracle 数据库,AWSDMS支持版本 11g(版本 11.2.0.4 及更高版本)以及最高 12.2、18c 和 19c 版本的所有 Oracle 数据库版本。我们建议您使用最新版本的,AWSDMS以获得最全面的版本和功能支持。

架构

源技术堆栈

下列情况之一:

  • 本地 Oracle 数据库

  • EC2实例上的 Oracle 数据库

  • Amazon f RDS or Oracle 数据库实例

目标技术堆栈

  • Amazon Redshift

目标架构

从AWS云端运行的 Oracle 数据库到 Amazon Redshift:

将AWS云端的 Oracle 数据库迁移到亚马逊 Redshift 数据仓库。

从本地数据中心内运行的 Oracle 数据库至 Amazon Redshift:

将本地 Oracle 数据库迁移到亚马逊 Redshift 数据仓库。

工具

  • AWSDMS-AWS 数据迁移服务 (AWSDMS) 可帮助您AWS快速安全地将数据库迁移到。源数据库可在迁移过程中保持全面运行,从而最大程度地为依赖该数据库的应用程序减少停机时间。AWSDMS可以将您的数据迁入和迁出最广泛使用的商业和开源数据库。 

  • AWSSCT-AWS Schema Conversion Tool (AWSSCT) 可用于将现有数据库架构从一个数据库引擎转换为另一个数据库引擎。它支持各种数据库引擎,包括 Oracle、SQL Server 和 Postgres 作为SQL源。

操作说明

任务描述所需技能

验证数据库版本。

验证源数据库和目标数据库的版本,并确保它们受支持AWSDMS。有关支持的 Oracle 数据库版本的信息,请参阅使用 Oracle 数据库作为源AWSDMS。有关使用亚马逊 Redshift 作为目标的信息,请参阅使用亚马逊 Redshift 数据库作为目标。AWS DMS

DBA

创建VPC和安全组。

在您的AWS账户中创建虚拟私有云 (VPC)(如果不存在)。为源数据库与目标数据库的出站流量创建安全组。有关更多信息,请参阅亚马逊 Virtual Private Cloud(亚马逊VPC)文档

系统管理员

安装AWSSCT。

下载并安装最新版本AWSSCT及其相应的驱动程序。有关更多信息,请参阅安装、验证和更新AWSSCT

DBA

为AWSDMS任务创建用户。

在源数据库中创建AWSDMS用户并授予其READ权限。AWSSCT和都将使用此用户AWSDMS。

DBA

测试数据库连接。

测试至 Oracle 数据库实例的连接。

DBA

在中创建新项目AWSSCT。

打开该AWSSCT工具并创建一个新项目。

DBA

分析待迁移的 Oracle 架构。

用于分析AWSSCT要迁移的架构,并生成数据库迁移评估报告。有关更多信息,请参阅AWSSCT文档中的创建数据库迁移评估报告

DBA

查看评测报告。

查看报告,以了解迁移的可行性。某些数据库对象可能需要手动转换。有关报告的更多信息,请参阅AWSSCT文档中的查看评估报告

DBA
任务描述所需技能

创建一个 Amazon Redshift 集群。

在您之前创建的 Amazon Redshift 集群VPC中创建。有关更多信息,请参阅 Amazon Redshift 文档中的 Amazon Redshift 集群

DBA

创建数据库用户。

从 Oracle 源数据库中提取用户、角色和权限列表。在目标 Amazon Redshift 数据库中创建用户,并应用上一步骤中的角色。

DBA

评估数据库参数。

查看 Oracle 源数据库中的数据库选项、参数、网络文件和数据库链接,然后评估其对目标的适用性。           

DBA

将所有相关设置应用至目标。

有关该步骤的更多信息,请参阅 Amazon Redshift API 文档中的配置参考

DBA
任务描述所需技能

在目标数据库中创建AWSDMS用户。

在目标数据库中创建AWSDMS用户并授予其读写权限。验证来自的连接AWSSCT。

DBA

转换架构,查看SQL报告并保存所有错误或警告。

有关更多信息,请参阅AWSSCT文档AWSSCT中的使用转换数据库架构

DBA

将架构更改应用至目标数据库或将其另存为 .sql 文件。

有关说明,请参阅AWSSCT文档中的保存和应用转换后的架构。AWS SCT

DBA

验证目标数据库中的对象。

在目标数据库中验证上一步骤创建的对象。重写或重新设计所有未成功转换的对象。

DBA

禁用外键和触发器。

禁用任何外键和触发器。在运行时,这可能会导致在满载过程中出现数据加载问题AWSDMS。

DBA
任务描述所需技能

创建AWSDMS复制实例。

登录到AWS管理控制台,然后打开AWSDMS控制台。在导航窗格中,选择复制实例,选择创建复制实例。有关详细说明,请参阅AWSDMS文档中入门AWSDMS中的步骤 1

DBA

创建源和目标端点。

创建源端点和目标端点,测试从复制实例至源端点和目标端点的连接。有关详细说明,请参阅AWSDMS文档中入门AWSDMS中的步骤 2

DBA

创建复制任务。

创建复制任务,并选择适当的迁移方法。有关详细说明,请参阅AWSDMS文档中入门AWSDMS中的步骤 3

DBA

启动数据复制。

启动复制任务并监控日志中是否存在错误。

DBA
任务描述所需技能

创建应用程序服务器。

在上创建新的应用程序服务器AWS。

应用程序所有者

迁移应用程序代码。

将应用程序代码迁移至新服务器。

应用程序所有者

配置应用程序服务器。

为目标数据库和驱动程序配置应用程序服务器。

应用程序所有者

优化应用程序代码。

优化目标引擎的应用程序代码。

应用程序所有者
任务描述所需技能

验证用户。

在目标 Amazon Redshift 数据库中,验证用户并向其授予角色和权限。

DBA

验证应用程序是否已锁定。

确保应用程序已锁定,以避免进一步更改。

应用程序所有者

验证数据。

验证目标 Amazon Redshift 数据库中的数据。

DBA

启用外键与触发器。

在目标 Amazon Redshift 数据库中启用外键与触发器。

DBA

连接至该数据库。

将应用程序配置为连接新 Amazon Redshift 数据库。

应用程序所有者

执行最终检查。

在上线前执行最终全面系统检查。

DBA,应用程序所有者

上线。

使用目标 Amazon Redshift 数据库上线。

DBA
任务描述所需技能

关闭临时AWS资源。

关闭临时AWS资源,例如AWSDMS复制实例和用于的EC2实例AWSSCT。 

DBA,系统管理员

查看文件。

查看和验证迁移项目文档。   

DBA,系统管理员

收集指标。

收集有关迁移项目的信息,例如迁移时间、手动任务与工具任务百分比以及总节省成本。 

DBA,系统管理员

关闭项目。

关闭项目并提供反馈。

DBA,系统管理员

相关资源

参考

教程和视频