对于持续迁移,您可以在需要将读取和写入操作移至目标数据库后启动升级过程。提升意味着迁移后的 Cloud SQL 数据库现在可用于所有读写操作。
您可以提升迁移作业,也可以从迁移作业中提升所选数据库。
- 启动促销活动。为避免数据丢失,请务必停止针对源数据库的所有写入操作、运行中的脚本和客户端连接。系统自此进入停机时间。
- 确保事务日志文件中的所有可用数据都复制到 Cloud SQL for SQL Server 目标实例。
Cloud SQL for SQL Server 来源
对于 Cloud SQL for SQL Server 来源,Database Migration Service 会自动处理事务日志导出监控。在停止对源实例执行写入操作后,您无需执行任何其他操作。您可以继续提升迁移作业。
自行管理或 Amazon RDS 来源
对于自行管理的来源或 Amazon RDS 来源,您可以通过执行以下任一操作来实现此结果:
- 停止 自动备份文件上传,或上传最后一个事务日志文件。监控 未处理的事务日志备份文件的大小,以确定 Database Migration Service 何时完成对该文件的处理。
- (可选)您可以上传名称以
.trn.final后缀结尾的事务日志文件。当 Database Migration Service 检测到名称与.trn.final后缀惯例匹配的备份文件时,会停止持续加载。当 Database Migration Service 处理完该文件后,迁移作业状态会更改为 准备好提升。
- 执行提升操作:
控制台
您可以在 Database Migration Service 中或从目标实例页面提升迁移作业。
在 Database Migration Service 中:
- 在 Google Cloud 控制台中,前往迁移作业页面。
- 在作业标签页上,点击要提升的迁移作业的显示名称。
系统会打开迁移作业详情页面。
- 执行以下任一提升操作:
- 如果您想提升所有数据库,请点击工具栏上的提升。
- 如果您只想提升特定数据库,请在数据库标签页中选择这些数据库,然后点击提升。
- 在对话框中,确保没有显示任何错误,然后点击提升。
从目标实例:
- 在 Google Cloud 控制台中,前往 Cloud SQL 实例页面。
- 点击迁移的目标实例的显示名称。
实例详情页面会打开。
- 在迁移部分中,点击提升。
- 在对话框中,确保没有显示任何错误,然后点击提升。
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
结果
该操作以异步方式执行。 因此,此命令会返回一个表示长时间运行的操作的 操作实体:
如需查看操作是否成功,您可以查询返回的操作对象,或检查迁移作业的状态: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
- 使用
gcloud database-migration migration-jobs describe命令查看迁移作业的状态。 - 将
gcloud database-migration operations describe与 OPERATION_ID 搭配使用,可查看操作本身的状态。
- 您选择的目标实例或数据库会升级,并且您迁移的数据库现在可供所有读写操作访问。
迁移作业状态会更改为
Completed。 - 现在,应用可以连接到 Cloud SQL 实例,并且可以安全地删除迁移作业。