数据库迁移评估:在迁移前识别对象与 SQL 兼容性 | NineData
数据库迁移的风险通常不只来自数据搬运,还来自源端和目标端在对象定义、数据类型、SQL 语法和运行行为上的差异。NineData 迁移评估可以在正式迁移前分析数据库对象和业务 SQL,帮助您识别兼容性问题、评估改造工作量,并为后续迁移计划提供依据。
适用场景
- 迁移立项前,评估源数据库与目标数据库的兼容性和改造范围。
- 迁移 POC 阶段,分析真实业务 SQL 在目标数据库中的可用性。
- 需要将评估结果、SQL 回放结果或改造建议交给项目、架构和审计人员复核的场景。
当前支持的源端、目标端和评估内容以迁移评估页面为准。
迁移评估包含哪些内容?
对象兼容性评估
系统可以分析表、视图、函数、存储过程和触发器等对象,并将结果区分为可兼容、可改造和不兼容,帮助您优先处理必须改造的对象。

对于可改造对象,评估详情会展示不兼容点和改造后的 DDL 示例,便于开发和 DBA 进一步确认。

SQL 兼容性评估
您可以直接采集数据源中的 SQL 执行记录,也可以上传 SQL 文件。系统会分析 SQL 的语法、函数和行为差异,并展示原始 SQL、兼容性结论以及可用的改写建议。

SQL 流量回放
SQL 流量回放会将采集到的 SQL 实际发送到目标数据库执行,用真实执行结果验证 SQL 的兼容性。您可以查看执行成功、失败、超时和慢 SQL 等结果,并定位单条 SQL 的报错信息。

警告
SQL 流量回放会在您指定的目标数据库中执行 SQL。请先确认目标环境、账号权限和 SQL 范围;涉及写入或修改数据的回放,必须使用已授权且可清理的测试环境,并提前准备回滚或清理方案。
创建迁移评估任务
- 登录 NineData 控制台,在左侧导航栏单击数据复制 > 迁移评估。
- 在迁移评估页面单击创建评估,选择源数据源、目标数据库类型和评估内容。
- 如果评估内容包含 SQL,选择从数据库采集 SQL 或上传 SQL 文件,并按需限定 SQL 类型。
- 根据评估范围选择全部对象或自定义对象,然后单击保存并启动立即启动;也可以单击保存保存配置后再启动。
查看结果并下载报告
- 在数据复制 > 迁移评估中打开目标评估任务。
- 在任务详情中查看总体兼容性、对象评估和 SQL 评估结果,优先处理不兼容和需要改造的内容。
- 如需验证目标端的真实执行效果,进入回放详情,配置目标数据源、数据库、SQL 回放方式和 SQL 类型,然后启动回放。
- 评估或回放完成后,单击生成评估报告或生成回放报告生成报告,再在报告下载中下载。


评估结果如何用于迁移?
- 根据对象评估结果确定结构改造范围和优先级。
- 根据 SQL 评估结果制定语法、函数和行为改造计划。
- 使用 SQL 回放结果确认关键 SQL 是否能在目标数据库中真实执行。
- 将评估报告和回放报告作为迁移 POC、方案评审和上线前验收的依据。