---
title: "OMA 概述 | OceanBase 文档中心"
description: OMA 概述 OceanBase 迁移评估（OceanBase Migration Assessment，OMA）是 OceanBase 提供的数据库迁移评估产品，为数据迁移提供精准的兼容性评估、高效的性能评估、全面的分布式推荐，以及应用逻辑改造建议，帮助用户高效全面的从其它数据库迁移至 OceanBase 数据库。…
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*eTwkRZSHAj0AAAAAAAAAAAAADiGDAQ/original) 迁移评估 OMAV 4.2.5 企业版

# OMA 概述

更新时间：2026-04-01 16:30:35

OceanBase 迁移评估（OceanBase Migration Assessment，OMA）是 OceanBase 提供的数据库迁移评估产品，为数据迁移提供精准的兼容性评估、高效的性能评估、全面的分布式推荐，以及应用逻辑改造建议，帮助用户高效全面的从其它数据库迁移至 OceanBase 数据库。

## 特性与优势

- 安装轻量、上手容易

  您无需安装 OMA 命令行，直接解压即可使用。

  使用 OMA 进行兼容性评估和性能评估时，您只需要输入评估参数、运行评估脚本，即可获取相应的评估报告。
 - 安全可靠

  OMA 评估时，使用单线程对数据库的 Meta 信息进行扫描，不会并发扫描数据库，能够保障用户的数据安全。
 - 评估内容丰富

  OMA 支持评估 Oracle、MySQL、PostgreSQL、DB2 LUW 等数据库，并支持为数据库中的对象（包括 Table、Index、View、Sequence、Synonym、Function、Procedure、Package 和 Trigger 等）以及全部 SQL 语句提供兼容性评估、性能评估和分布式评估。
 - 改造推荐智能

  OMA 兼容性评估中针对未完全兼容的场景，会基于 OceanBase 多年沉淀的最佳实践，提供迁移至 OceanBase 数据库的分布式改造方案。

## 产品功能

OceanBase 使用 OMA 工具进行源端数据库迁移至 OceanBase 数据库之前的兼容性评估和性能评估。

- 兼容性评估：该功能支持读取源端数据库的全部对象进行数据库对象、数据库 SQL 或 PL 语句等兼容性评估。
 - 性能评估：该功能基于捕获源端数据库工作负载并在目标 OceanBase 集群进行精确回放，以评估相同的工作负载在 OceanBase 数据库的性能。

### 兼容性评估

兼容性评估是数据库迁移的核心前置工作，其实质是系统化检测 Oracle、MySQL 等源端数据库和目标端 OceanBase 数据库之间的差异（包括语法、支持的系统包函数、支持的数据类型等差异），并制定迁移策略的技术过程。兼容性评估是数据迁移成功的第一道防火墙，通过量化风险、精准施策，确保企业级数据库迁移改得动、跑得稳、性能优。

目前 OMA 支持评估 Oracle、MySQL、PostgreSQL、TiDB、DB2 LUW、RDS MySQL、Polar-MySQL、Polar-O、DRDS、SQL Server、openGauss，以及 OceanBase 实例（包括 MySQL 和 Oracle 租户）实例转换至 OceanBase 数据库的兼容性，并出具兼容性报告。对于 Oracle 和 MySQL 实例的评估，评估报告中会显示不兼容的具体原因和修改建议。对于其它类型实例的评估，仅会显示不兼容的具体原因。

兼容性评估功能支持数据库对象评估、数据库 SQL 或 PL 语句评估，以及整库评估：

- 数据库对象评估

     - 直接连接源端数据库，自动获取源端数据库对象的信息，评估源端数据库至 OceanBase 对应版本的兼容性。
     - 从 Oracle 和 MySQL 的 DDL 语句进行兼容性评估，支持对文本文件（"$$" 分隔）的 DDL 语句进行评估。
     - 支持通过轻客户端连接 Oracle，导出 DDL 语句文件进行兼容性评估。
     - 支持直接读取 MySQLDump 导出的 DDL 语句进行兼容性评估。
     - 支持通过 db2look 工具导出 DDL 语句进行兼容性评估。
 - 数据库 SQL 或 PL 语句评估

     - 支持直接连接 Oracle 数据库，直接扫描 V$SQL 视图，获取对应 Schema 的 SQL 语句，并评估对应 OceanBase 数据库版本的兼容性。
     - 支持从文本文件（";"或"$$"分隔）评估 SQL 或 PL 兼容性。
     - 支持直接从 MyBatis 文件和 iBatis 文件解析 SQL 语句，评估其兼容性。
     - 支持直接连接 Oracle 数据库，长时间周期性扫描 V$SQL 视图，获取一个时间段的所有 SQL 语句并进行评估。
     - 支持连接 DB2 LUW 数据库，长时间周期性扫描 snapshot for dynmaic sql，获取一个时间段内所有的 SQL 并进行评估。
 - 整库评估

  整库评估整合了对象评估、SQL 评估和画像评估等模式，让用户可以在一次评估任务中，完成对数据库上述三种模式的评估，并可以在一个报告中查看相应的评估结果。

  目前 OMA 整库评估功能对 Oracle、MySQL、TiDB、PostgreSQL 和 DB2 LUW 数据库支持的模式不同，详情请参见 [整库评估](https://www.oceanbase.com/docs/enterprise-oma-doc-cn-1000000003404972)。

使用兼容性评估功能的优势如下：

- 避免数据迁移的灾难性风险

     - 案例：某金融机构通过兼容性评估识别到目标端不支持的 DBMS_JOB 包，提前进行改写，避免了业务中断的风险。
     - 兼容性评估的作用：提前识别 1000+ 条不兼容 SQL 语法，对其进行改造后实现零故障迁移。
 - 精确控制改造成本

     - 兼容性评估报告能够量化需要改造点。例如，存储过程改写量 32 个（共 200 个），不兼容函数存在 15 处。
     - 兼容性评估的作用：控制改造成本，避免预算失控。例如，某企业通过兼容性评估，将预估工期从 6 个月压缩至 2 个月。
 - 保障分布式架构性能

     - OceanBase 数据库的分布性特性可能导致 SQL 执行计划剧变。

      兼容性评估支持检测查询 SQL 无过滤条件会造成全表扫描、多表关联 SQL 超过 5 张以上的关联表等情况。
     - 兼容性评估的作用：在迁移数据前，提前扫描出可能造成性能影响的 SQL 语句，以便进行重构，避免性能下降的风险。
     - 案例：某电商平台通过兼容性评估，重构 120 条 SQL 语句。迁移数据后，TPS 反而提升 40%。

### 性能评估

性能评估是 OceanBase 数据库迁移工具链中的关键组件，专门用于捕获源端数据库工作负载并在目标 OceanBase 集群上精确回放的技术。

性能评估功能支持 SQL 回放或压测：

- 支持连接源端数据库，采集查询类型的 SQL 语句（SELECT 语句），并且向 OceanBase 数据库进行 SQL 回放，验证 SQL 语句的兼容性和 OceanBase 数据库的性能。
 - 支持 Oracle 负载采集，并且对解析出的 SQL 语句进行兼容性评估，或向 OceanBase 数据库进行回放，验证 SQL 语句的准确性和性能。
 - 支持解析 MySQL 数据库的 General Log 文件并进行回放。
 - 在 OceanBase 数据库升级的场景下，支持从低版本的 OceanBase 数据库拉取查询语句，在新版本的 OceanBase 数据库进行回放。

使用性能评估功能的优势如下：

- 控制迁移风险

     - 真实场景模拟：在数据迁移前捕获生产环境的真实 SQL 流量。
     - 问题预发现：提前暴露兼容性问题、性能瓶颈和配置缺陷。
     - 零宕期验证：在不影响生产环境的情况下，实现全面测试。
 - 测试性能基准

     - 客观对比：精确量化数据迁移前后的性能差异。
     - 容量规划：验证 OceanBase 集群配置是否满足业务需求。
     - 调优依据：识别需要优化的 SQL 和访问模式。
 - 评估变更影响

     - 验证架构变更：评估从集中式到分布式架构的影响。
     - 测试版本升级：安全验证 OceanBase 新版本的性能。
     - 评估硬件更换：测试不同硬件配置下的性能表现。

性能评估的核心价值和作用如下：

- 全面兼容性保障

  ![tutorial21-zh](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/oma/tutorial21-zh.png)

     - 识别不兼容的 SQL 语法。
     - 针对慢 SQL 进行性能调优。
 - 精准性能分析

  | 指标 | 源端数据库 | OceanBase 数据库 |
  | --- | --- | --- |
  | QPS | 10000 | 12000 |
  | 耗时平均值 | 6.3ms | 5.2ms |

  通过上表的示例数据，您可以快速定位：

     - 源端和目标端耗时对比
     - 执行成功和失败 SQL 的次数
     - 获取执行耗时较大的 SQL 语句进行调优

### 导出 OceanBase 数据库对象和 SQL 语句

- 支持从 OceanBase 数据库导出对应 Schema 的对象 DDL。
 - 支持从 OceanBase 数据库导出对应时间段的 SQL_AUDIT 中的 SQL 语句详情。

 下一篇 ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
