本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
SQL使用AWSDMS和将 Oracle 数据库迁移到 Aurora Postgre AWS SCT
由 Senthil Ramasamy 创作 () AWS
环境:PoC 或试点 | 源:Oracle 数据库 | 目标:亚马逊 Aurora Postgre SQL-兼容 |
R 类型:重构 | 工作负载:Oracle | 技术:迁移;数据库 |
AWS服务:亚马逊 Aurora |
Summary
此模式描述了如何使用AWS数据迁移服务 (AWSDMS) 和 S AWS chema Conversion SQL Tool (AWSSCT) 将 Oracle 数据库迁移到 Amazon Aurora Postgre 兼容版。
该模式涵盖本地的 Oracle 源数据库、安装在亚马逊弹性计算云 (AmazonEC2) 实例上的 Oracle 数据库以及适用于 Oracle 数据库的亚马逊关系数据库服务 (亚马逊RDS)。该模式将这些数据库转换为兼容 Aurora Postgre SQL 的数据库。
先决条件和限制
先决条件
一个活动的 AWS 账户。
本地数据中心或AWS云端的 Oracle 数据库。
SQL安装在本地计算机或EC2实例上的客户端。
连接AWSSCT器的 Java 数据库连接 (JDBC) 驱动程序,安装在本地计算机或安装AWSSCT的EC2实例上。
限制
数据库大小限制:128 TB
如果源数据库支持商用 off-the-shelf (COTS) 应用程序或特定于供应商,则可能无法将其转换为其他数据库引擎。在使用此模式之前,请确认应用程序支持兼容 Aurora Postgre SQL。
产品版本
对于自行管理的 Oracle 数据库,AWSDMS支持 10.2 及更高版本(适用于版本 10.x)、11g 以及最高 12.2、18c 和 19c 的所有 Oracle 数据库版本。有关支持的 Oracle 数据库版本(包括自行管理版本和 Amazon RDS for Oracle)的最新列表,请参阅使用 Oracle 数据库作为源AWSDMS和使用 Postgre SQL 数据库作为目标。AWS DMS
我们建议您使用最新版本的,AWSDMS以获得最全面的版本和功能支持。有关支持的 Oracle 数据库版本的信息 AWSSCT,请参阅AWSSCT文档。
架构
源技术堆栈
下列情况之一:
本地 Oracle 数据库
EC2实例上的 Oracle 数据库
Amazon f RDS or Oracle 数据库实例
目标技术堆栈
Aurora Postgre SQL-兼容
目标架构
数据迁移架构
来自在AWS云中运行的 Oracle 数据库
从本地数据中心内运行的 Oracle 数据库
工具
AWSDat@@ abase Migration Service (AWSDMS) 可帮助您将数据存储迁移到AWS云端,或者在云端和本地设置的组合之间迁移。
AWSSchema Conversion Tool (AWSSCT) 通过自动将源数据库架构和大部分自定义代码转换为与目标数据库兼容的格式来支持异构数据库迁移。
操作说明
任务 | 描述 | 所需技能 |
---|---|---|
准备源数据库。 | 要准备源数据库,请参阅AWSSCT文档AWSSCT中的 “使用 Oracle 数据库作为源”。 | DBA |
为创建一个EC2实例AWSSCT。 | 如有必要 AWSSCT,为创建和配置EC2实例。 | DBA |
下载AWSSCT。 | 下载最新版本AWSSCT和相关驱动程序。有关更多信息,请参阅AWSSCT文档AWSSCT中的安装、验证和更新。 | DBA |
添加用户和权限。 | 在源数据库中添加并验证必备用户和权限。 | DBA |
创建AWSSCT项目。 | 为工作负载创建AWSSCT项目,然后连接到源数据库。有关说明,请参阅AWSSCT文档中的创建AWSSCT项目和添加数据库服务器。 | DBA |
评估可行性。 | 生成评测报告,其中汇总了无法自动转换架构的操作项目,并提供了手动转换的估算值。有关更多信息,请参阅AWSSCT文档中的创建和查看数据库迁移评估报告。 | DBA |
任务 | 描述 | 所需技能 |
---|---|---|
创建目标 Amazon RDS 数据库实例。 | 使用 Amazon A RDS urora 作为数据库引擎,创建目标亚马逊数据库实例。有关说明,请参阅亚马逊RDS文档中的创建亚马逊RDS数据库实例。 | DBA |
提取用户、角色与权限。 | 从源数据库中提取用户、角色和权限列表。 | DBA |
映射用户。 | 将现有数据库用户映射到新的数据库用户。 | 应用程序所有者 |
创建用户。 | 在目标数据库中创建用户。 | DBA,应用程序所有者 |
应用角色。 | 将上一步的角色应用至目标数据库。 | DBA |
检查选项、参数、网络文件和数据库链接。 | 查看源数据库选项、参数、网络文件和数据库链接,然后评估其对目标数据库的适用性。 | DBA |
应用设置。 | 将所有相关设置应用至目标数据库。 | DBA |
任务 | 描述 | 所需技能 |
---|---|---|
配置AWSSCT连接。 | 配置与目标数据库的AWSSCT连接。 | DBA |
使用转换架构AWSSCT。 | AWSSCT自动将源数据库架构和大部分自定义代码转换为与目标数据库兼容的格式。该工具无法自动转换的任意代码会被清楚地标记,以便您进行手动转换。 | DBA |
查看报告。 | 查看生成的SQL报告并保存所有错误和警告。 | DBA |
应用自动架构更改。 | 将自动架构更改应用至目标数据库或将其另存为 .sql 文件。 | DBA |
验证对象。 | 验证是否在目标上AWSSCT创建了对象。 | DBA |
处理未转换的对象。 | 手动重写、拒绝或重新设计任何无法自动转换的项目。 | DBA,应用程序所有者 |
应用角色与用户权限。 | 应用生成的角色和用户权限,并查看所有例外情况。 | DBA |
任务 | 描述 | 所需技能 |
---|---|---|
确定方法。 | 确定数据迁移方法。 | DBA |
创建复制实例。 | 从AWSDMS控制台创建复制实例。有关更多信息,请参阅AWSDMS文档中的使用AWSDMS复制实例。 | DBA |
创建源端点和目标端点。 | 要创建端点,请按照AWSDMS文档中创建源端点和目标端点中的说明进行操作。 | DBA |
创建复制任务。 | 要创建任务,请参阅AWSDMS文档中的处理AWSDMS任务。 | DBA |
启动复制任务并监控日志。 | 有关此步骤的更多信息,请参阅AWSDMS文档中的监控AWSDMS任务。 | DBA |
任务 | 描述 | 所需技能 |
---|---|---|
分析和转换应用程序代码中的SQL项目。 | AWSSCT用于分析和转换应用程序代码中的SQL项目。当您将数据库架构从一个引擎转换为另一个引擎时,还需要更新应用程序中的SQL代码,以便与新的数据库引擎而不是旧的数据库引擎进行交互。您可以查看、分析、编辑和保存转换后的SQL代码。 | 应用程序所有者 |
创建应用程序服务器。 | 在上创建新的应用程序服务器AWS。 | 应用程序所有者 |
迁移应用程序代码。 | 将应用程序代码迁移至新服务器。 | 应用程序所有者 |
配置应用程序服务器。 | 为目标数据库和驱动程序配置应用程序服务器。 | 应用程序所有者 |
修复代码。 | 修复应用程序中所有特定的源数据库引擎代码。 | 应用程序所有者 |
优化代码。 | 针对目标数据库引擎优化应用程序代码。 | 应用程序所有者 |
任务 | 描述 | 所需技能 |
---|---|---|
割接至目标数据库。 | 执行至新数据库的割接。 | DBA |
锁定应用程序。 | 锁定应用程序,避免任何进一步的更改。 | 应用程序所有者 |
验证更改。 | 验证所有更改是否都已传播到目标数据库。 | DBA |
重定向至目标数据库。 | 将新的应用程序服务器指向目标数据库。 | 应用程序所有者 |
检查所有内容。 | 执行最终全面系统检查。 | 应用程序所有者 |
上线。 | 完成最终割接任务。 | 应用程序所有者 |
任务 | 描述 | 所需技能 |
---|---|---|
关闭临时资源。 | 关闭临时AWS资源,例如AWSDMS复制实例和用于的EC2实例AWSSCT。 | DBA,应用程序所有者 |
更新反馈。 | 为内部团队更新有关AWSDMS流程的反馈。 | DBA,应用程序所有者 |
修改过程与模板。 | 如有必要,修改AWSDMS流程并改进模板。 | DBA,应用程序所有者 |
验证文档。 | 查看和验证项目文档。 | DBA,应用程序所有者 |
收集指标。 | 收集指标以评估迁移时间、手动与工具成本节约比等。 | DBA,应用程序所有者 |
关闭项目。 | 关闭迁移项目并向利益相关者提供反馈。 | DBA,应用程序所有者 |
相关资源
参考
教程和视频
其他信息
.