提升迁移作业

对于持续迁移,在需要将读取和写入操作转移到目标数据库时,您可以启动升级流程。提升意味着迁移后的 Cloud SQL 数据库现在可用于所有读取和写入操作。

您可以升级迁移作业,也可以从迁移作业中升级所选数据库。

  1. 启动宣传活动。为避免数据丢失,请务必停止所有写入操作、正在运行的脚本以及与源数据库的客户端连接。 停用时间段从此处开始。
  2. 确保事务日志文件中的所有可用数据都复制到 Cloud SQL for SQL Server 目标实例。

    您可以通过执行以下任一操作来实现此结果:

  3. 执行升级操作:

    控制台

    1. 在 Google Cloud 控制台中,前往迁移作业页面。

      前往“迁移作业”

    2. 作业标签页上,点击要提升的迁移作业的显示名称。
    3. 系统会打开迁移作业详情页面。

    4. 执行以下任一宣传操作:
      • 如果您想提升迁移中包含的所有数据库,请在迁移作业的工具栏中点击提升

        系统会显示“提升迁移作业”对话框。

      • 如果您只想升级特定数据库,请使用数据库标签页上的复选框选择这些数据库,然后点击升级

        系统会显示一个对话框,其中包含您要提升为正式版的数据库的数量。

    5. 在对话框中,确保未显示任何错误,然后点击提升

    gcloud

    在使用下面的命令数据之前,请先进行以下替换:

    • MIGRATION_JOB_ID 替换为您的迁移作业标识符。

      如果您不知道标识符,可以使用 gcloud database-migration migration-jobs list 命令列出指定区域中的所有迁移作业,并查看其标识符。

    • REGION 替换为保存连接配置文件的区域的标识符。
    • 可选:Database Migration Service 默认会迁移源中的所有数据库。如果您只想迁移特定数据库,请使用 --databases-filter 标志,并以英文逗号分隔的列表形式指定这些数据库的标识符。

      例如:--databases-filter=my-business-database,my-other-database

      您可以使用 gcloud database-migration migration-jobs update 命令,稍后修改使用 --database-filter flag 创建的迁移作业。

    执行以下命令:

    Linux、macOS 或 Cloud Shell

    gcloud database-migration migration-jobs \
    promote MIGRATION_JOB_ID \
      --region=REGION

    Windows (PowerShell)

    gcloud database-migration migration-jobs `
    promote MIGRATION_JOB_ID `
      --region=REGION

    Windows (cmd.exe)

    gcloud database-migration migration-jobs ^
    promote MIGRATION_JOB_ID ^
      --region=REGION

    结果

    该操作以异步方式执行。 因此,此命令会返回一个表示长时间运行的操作的 Operation 实体

    done: false
    metadata:
      '@type': type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata
      apiVersion: v1
      createTime: '2024-02-20T12:20:24.493106418Z'
      requestedCancellation: false
      target: MIGRATION_JOB_ID
      verb: start
    name: OPERATION_ID
    
    如需查看操作是否成功,您可以查询返回的操作对象,或检查迁移作业的状态:
  4. 系统会提升目标实例或您选择的数据库,并且您迁移的数据库现在可用于所有读取和写入操作。 迁移作业状态会更改为 Completed
  5. 现在,应用可以连接到 Cloud SQL 实例,并且可以安全地删除迁移作业。