验证迁移

本页介绍了确认迁移作业是否已正确将数据从源数据库实例迁移到目标 Cloud SQL 数据库实例的说明。

至少要验证数据库实例及其表是否存在于 Cloud SQL 实例中。您还可以验证表的行数或确切内容。

使用数据验证工具进行验证

使用开源数据验证工具验证源和目标之间是否有数据匹配。

如需验证最小示例,请按以下步骤操作:

  1. 部署或使用同时具有源和目标访问权限的虚拟机。

  2. 在虚拟机中,创建一个用于安装数据验证工具的文件夹。

  3. 前往您创建的文件夹。

  4. 使用 pip 安装数据验证工具:

    pip install google-pso-data-validator
    
  5. 创建与源 Oracle 数据库和目标 Cloud SQL for PostgreSQL 数据库的连接:

    data-validation connections add -c source Oracle --host 'ip-address' --port port --user username --password pswd --database database-name
    data-validation connections add -c target Postgres --host 'ip-address' --port port --user username --password pswd --database database-name
    

    例如:

    data-validation connections add -c source Oracle --host '10.10.10.11' --port 1521 --user system --password pswd --database XE
    data-validation connections add -c target Postgres --host '10.10.10.12' --port 5432 --user postgres --password pswd --database postgres
    
  6. 创建或生成表列表,以比较源数据库和目标数据库中的数据:

    export TABLES_LIST=$(data-validation find-tables --source-conn source --target-conn target --allowed-schemas schema-name)
    

    例如:

    export TABLES_LIST=$(data-validation find-tables --source-conn source --target-conn target --allowed-schemas public)
    
  7. 针对所有表运行完整验证:

    data-validation validate column --source-conn source --target-conn target --tables-list "${TABLES_LIST}"
    

我们建议您在复制期间运行此验证,以确保相对一致性。在促销活动时间较短的情况下,大型表查询可能需要运行太长时间。在这种情况下,请使用数据验证工具添加过滤条件以缩短运行时间,或准备表格列表以包含一组表格以进行最终验证。