Azure Data Studio 中的 Database Migration Assessment for Oracle 扩展有助于评估要迁移到 Azure SQL 和 Azure Database for PostgreSQL 的 Oracle 工作负载。 该扩展可用于确定适当的 Azure SQL 或 PostgreSQL 目标,提供有关大小调整的建议,并指出迁移的复杂程度。

试用要迁移到 Azure Database for PostgreSQL 的最新 Oracle 工作负载和代码评估。

  • Azure Data Studio 1.39 或更高版本
  • 一个运行 10g 或更高版本的 Oracle 数据库
  • Oracle 用户应该拥有 CONNECT 和 SELECT ANY DICTIONARY 特权。
  • 安装 Azure Data Studio 扩展

    按照以下步骤在 Azure Data Studio 中安装适用于 Oracle 的数据库迁移评估扩展。

  • 在 Azure Data Studio 中打开扩展管理器。 可以选择扩展图标,或者在“视图”菜单中选择“扩展”。

  • 在搜索栏中键入“Oracle”。

  • 选择“适用于 Oracle 的数据库迁移评估”扩展扩展并查看其详细信息。

  • 选择“安装” 。

  • 在“数据源”字段中,键入你的 Oracle 服务器名称和实例。
  • 也可以提供 TNS 名称。 (确保已设置 ORACLE_HOME 环境变量,并且 TNSNAMES.ORA 文件位于 <ORACLE_HOME>/network/admin folder 中。)
  • 在“用户 ID”字段中提供数据库用户名。
  • 在“密码”字段中提供数据库密码。
  • 在“目标平台”字段中,输入目标迁移数据库。 目前,它支持将 Azure SQL 和 PostgreSQL 作为目标。

  • 在“性能数据收集”部分,选择“在 Oracle 数据库上运行性能数据收集(已连接)”或“添加 AWR 报告”。

    如果在高峰或实际负载期间运行此工具,建议使用“已连接”选项。 否则,请提供过去生成的 AWR 报告,以提供性能和大小调整建议。

  • 在“比例因子”字段中输入乘数值。

  • 如果推荐的 SKU 需要考虑其他峰值负载,则比例因子乘数应大于 1。 例如,突发负载、季节性使用情况和未来容量规划。 当迁移部分 Oracle 架构工作负载时,乘数应小于 1。
  • 在“百分位利用率”字段中,输入用于调整 Azure 目标大小的百分位数值。

  • 考虑用于调整 Azure 目标大小的性能样本集的百分位值。
  • 当目标为 PostgreSQL 时,有两种类型的评估:

  • 工作负载评估。 在此评估中,Oracle 评估模块对架构对象执行的操作是轻型发现,并为迁移架构复杂性划分各种类别,同时准确估计转换时长。

  • 代码评估。 代码评估对 Oracle 架构对象执行深入评估,然后会在粒度级别提供代码对象的整体准备情况(包括“就绪”、“需要审查”和“未就绪”对象类型),并更准确地提供其关联的转换时长。

    对于代码评估,该扩展使用开放源代码 Ora2Pg 架构转换器。

    如果 Oracle 客户端和/或 Ora2Pg 未与 Azure Data Studio 安装在同一台计算机上,请手动安装它们,或使用 GitHub 中的 Ora2Pg 安装脚本

    如果安装了 Oracle 客户端和 Ora2Pg,请确保在扩展设置中更新 Oracle 客户端主路径和 Ora2Pg 安装路径。

  • 现在,在“最后五项评估”部分可以看到新的评估。

  • 选择评估链接以查看评估详细信息页。 可以查看最新评估状态。

  • 选择“刷新”或等待评估完成。 默认情况下,评估状态页每隔 15 秒刷新一次。 将显示以下四种状态之一:成功、失败、正在进行或已取消。

    评估完成后,将为每个 Azure SQL 目标生成使用卡的合并输出:Azure 虚拟机中的 SQL Server、Azure SQL 数据库和 Azure SQL 托管实例,或 Azure Database for PostgreSQL 灵活服务器。

    每张卡片都包含多个部分。 卡片显示迁移到目标的总体可行性。 你也可以向下钻取各种迁移复杂性类别下的各个工作负载:

  • 功能兼容性部分提供功能评估评审结果。
  • SKU 推荐提供适当的目标大小。
  • 代码评估提供数据库对象的代码复杂性。
  • 选择“查看报告详细信息”时,它将首先显示评估摘要。

    如果选择的目标是 Azure PostgreSQL Database,则根据选择的评估类型,将提供“数据库详细信息”选项卡或“代码评估”选项卡。

    以下“数据库详细信息”选项卡按架构提供明细。 它会显示已发现的架构列表、迁移可行性以及估算的架构转换时间(小时)。

    此时间是根据应用于对象计数、代码行数、启用的功能数和数据库大小的统计模型估算的。 若要更准确地估算代码转换,请使用 适用于 Oracle 的 SQL Server 迁移助手

    以下系统或 Oracle 内置架构被排除在工作负载评估之外:

    APEX , APPQOSSYS , AUDSYS , CSMIG , CTXSYS , DBMS_PRIVILEGE_CAPTURE , DBSFWUSER , DBSNMP , DIP , DMSYS , DVF , DVSYS , EXFSYS , FLOW_ , GSMADMIN_INTERNAL , LBACSYS , MDDATA , MDSYS , MGDSYS , MGMT_VIEW , MTMSYS , ODM , ODM_MTR , OJVMSYS , OLAPSYS , ORACLE_OCM , ORDDATA , ORDPLUGINS , ORDSYS , OSE$HTTP$ADMIN , OUTLN , OWBSYS , OWBSYS_AUDIT , PERFSTAT , SDE , SI_INFORMTN_SCHEMA , SPATIAL_CSW_ADMIN_USR , SPATIAL_WFS_ADMIN_USR , SQLTXPLAIN , SYS , SYSMAN , SYSTEM , TRACESRV , TSMSYS , WEBSYS , WKPROXY , WKSYS , WK_PROXY , WK_TEST , WMSYS , XDB , XS$NULL

    SKU 建议提供以下内容:

  • 合适的 Azure 目标。

  • 服务层级。

  • 用于提供推荐 SKU 的指标阈值。

    如果在 Oracle 实例上启用了自动工作负载存储库 (AWR) 功能,则 SKU 推荐器将使用 DBA_HIST_ 视图来收集性能指标元数据。 否则,推荐器将使用服务器配置和其他系统视图信息来调整 Azure SQL 目标的大小。

    代码兼容性(仅限 PostgreSQL 目标)提供了可转换为 Azure 目标的架构对象的摘要。 该报告将对象细分为以下类型:可自动转换、就绪(有条件)、需要手动修正和转换。

    该报告显示将代码迁移到 Azure PostgreSQL Database 所需的对象总数和转换工作时长。 图形图像提供了每个架构对象类型(如表、视图和群集)的明细。 这些工作分为“准备好 - 自动转换”、“需要审查”和“未准备好 - 需要手动转换”。

    “未准备好”和“需要审查”部分的向下钻取提供了修正任务列表和每个任务的工作时长。

    功能评估提供 Oracle 到 Azure 数据目标的映射功能,以及将这些功能迁移到 Azure 目标所需的工作。

    可以通过选择“下载组合报告”或“下载单个报告”来下载报告以供脱机查看。

    还可以取消正在进行的评估、删除评估,以及将评估转移到另一个目录。

    更改评估路径

  • 转到扩展市场并搜索“Oracle 的数据库迁移评估”。
  • 选择“管理”图标,然后选择“扩展”设置。
  • 在“Oracle 评估: 评估路径”下提供新的评估路径。
  • 该扩展将错误、警告和其他诊断日志存储在默认日志目录中:

  • Windows - C:\Users\<username>.dmaoracle\logs\
  • Linux - ~/.dmaoracle/logs
  • macOS - /Users/<username>/.dmaoracle/logs
  • 默认情况下,该扩展会存储最后 7 个日志文件。

    若要更改日志目录,请在扩展设置文件中更新 LogDirectory 属性。

    Windows C:\Users\<username>\.azuredatastudio\extensions\microsoft.azuredatastudio-dma-oracle-<VersionNumber>\bin\service\Properties\ConfigSettings\extension-settings.json Linux ~/.azuredatastudio/extensions/microsoft.azuredatastudio-dma-oracle-<VersionNumber>/<VersionNumber>/bin/service/Properties/ConfigSettings/extension-settings.json macOS /Users/<username>/.azuredatastudio/extensions/microsoft.azuredatastudio-dma-oracle-<VersionNumber>/<VersionNumber>/bin/service/Properties/ConfigSettings/extension-settings.json

    有关故障排除问题的详细信息,请访问 排查 Oracle 扩展的数据库迁移评估错误

    已知问题和限制

  • 提供的路径不存在。

    原因:缺少文件或者缺少对评估文件夹的权限。

    可行解决方案:

  • 用户对评估文件夹拥有读取和写入权限。
  • 如果缺少文件或文件夹,请删除评估,然后生成新的评估。
  • 与 Oracle 交互时遇到连接超时异常。

    原因:无法连接到 Oracle 实例。

    可行解决方案:

  • 检查防火墙规则是否阻止了 Oracle 侦听端口。
  • 运行 tnsping 并查看是否解析了服务 ID。
  • 请与 Microsoft 联系以获取帮助

    如果需要 Microsoft 的进一步帮助,请联系 @Dmasupport 。 为了加快周转速度,可以从 默认日志目录 附加日志。

  • Oracle 扩展
  • Azure SQL 迁移扩展
  • 数据架构转换
  • Azure Data Studio 扩展
  •