切换

本文介绍了PolarDB-X 1.0升级至PolarDB-X 2.0时,切换和回滚的操作步骤。

当增量迁移的延迟在20秒内,且数据校验达到100%,表明源库和目标库的数据除增量迁移的延迟外,已经达到一致。增量迁移的延迟小于10秒且校验进度达到100%

当业务应用连接的数据库的迁移任务都达到以上状态时,可将业务从源实例切换至目标实例。

流程说明1712541286873-2d6aa0a0-d98a-4bf3-9be7-fbde771eb4db.png1712541501679-f9a364c4-0afd-4511-8e98-44a4f2f32b02.png

注意事项

  • 带地址切换

    • 若您的PolarDB-X 1.0实例版本低于5.3.8-15489913,则在单击开始正向切换之前,需禁止对该PolarDB-X 1.0实例进行写操作,并持续到切换结束。

    • PolarDB-X 1.0实例中所有数据库的迁移必须在同一个迁移任务中。

    • 带地址迁移只会修改连接地址,不会修改实例名,根据实例名配置的业务仍需手动进行调整(例如DMS、DTS、DataWorks等)。

    • 带地址迁移要求源和目标端端口一致。

    • 带地址迁移默认会修改两侧的私网主地址和公网主地址,不会修改只读地址,如有只读实例请单独处理。

    • 切换域名后需等待业务侧DNS缓存失效才可连接至新数据库,一般需30秒至5分钟,您可选择手动刷新业务服务器的DNS缓存加速失效。

  • 普通切换(不带地址切换)

    • 若您的PolarDB-X 1.0实例版本低于5.3.8-15489913,则在单击开始正向切换之前,需禁止对该PolarDB-X 1.0实例进行写操作,并持续到切换结束。

    • 若您的PolarDB-X 1.0实例版本高于或等于5.3.8-15489913,则单击开始正向切换后,会禁写源库24小时,请在24小时内完成地址修改。若超过24小时,请您采用其它禁写手段保持禁写,并持续到切换结束。

    • 为确保业务侧修改连接地址的完备性,建议您在修改地址前将对应写权限回收。防止漏改情况下,迁移两侧实例双写,导致数据不一致。

操作步骤

重要

操作前,请务必阅读注意事项。

  1. 在迁移任务详情页,单击左侧导航栏中的切换详情

  2. 等待正向同步延迟较小时,单击开始正向切换,将业务由1.0切换至2.0。

  3. 切换迁移对话框中,选择带地址切换(应用程序不用改连接配置)不带地址切换(应用程序需要改为新的PolarDB 2.0连接配置)

    • 若您选择带地址切换,后续操作步骤如下:

      1. 选中带地址切换并单击确定。系统会禁写源库24小时并等待正向同步完成,即目标库与源库数据一致。数据一致后,系统会自动将PolarDB-X 2.0的连接地址修改为PolarDB-X 1.0的连接地址。

        说明

        此步骤耗时约2分钟。

      2. 连接地址修改完成后,待应用侧DNS缓存失效,您无需在应用程序端修改任何配置即可自动连接到PolarDB-X 2.0。

        说明

        此步骤耗时取决于业务侧DNS缓存失效时间,通常为2分钟内。您可以在应用侧手动刷新DNS缓存,加速地址修改生效。

      3. 持续观察源库,确认所有应用已自动连接至PolarDB-X 2.0后, 单击确定源库无业务连接,解除源库的禁写,启动用于回滚的反向同步链路。

        说明

        您可以使用show processlist命令查看IP,确定是否有来自业务侧的连接。

    • 若您选择不带地址切换,后续操作步骤如下:

      1. 选中不带地址切换并单击确定。系统会禁写源库24小时并等待正向同步完成,即目标库与源库数据一致。

      2. 数据一致后,前端会提示“可以开启手动切换业务侧连接串”。此时修改业务侧连接串,将应用连接至PolarDB-X 2.0

        说明

        如您在24小时内无法完成修改业务连接串操作,可以自行用修改权限等方式确保源库在切换过程中保持禁写。

      3. 持续观察源库,确认所有应用已连接至目标PolarDB-X 2.0后, 单击确定源库无业务连接,解除源库的禁写,启动用于回滚的反向同步链路。

        说明

        您可以使用show processlist命令查看IP,确定是否有来自业务侧的连接。

将业务回滚至PolarDB-X 1.0(可选)

为了防止风险的发生(例如发现迁移的数据有误、迁移后数据库表现不符合预期等),切换后会自动将新写入目标数据库的业务数据回写到源数据库,以便在异常状况下,将业务回滚切换至源数据库。

  1. 在迁移任务详情页,单击左侧导航栏中的切换详情

  2. 等待反向同步延迟较小时,单击开始反向回滚并确定,此时会禁写目标库24小时并等待反向同步完成,即源库与目标库数据完全一致。

    • 若您正向切换选择带地址切换,后续操作步骤如下:

      1. 数据一致后,系统会自动将PolarDB-X 2.0的连接地址修改为PolarDB-X 1.0的连接地址。

        说明

        此步骤耗时约2分钟。

      2. 连接地址修改完成后,待应用侧DNS缓存失效,您无需在应用程序端修改任何配置即可自动连接到PolarDB-X 1.0。

        说明

        此步骤耗时取决于业务侧DNS缓存失效时间,通常为2分钟内。您可以在应用侧手动刷新DNS缓存,加速地址修改生效。

      3. 持续观察目标库,确认所有应用已自动连接至源PolarDB-X 1.0后,单击确定目标库无业务连接,解除目标库的禁写。

        说明

        您可以使用show processlist命令查看连接的客户端IP,确定是否有来自业务侧的连接。

      4. 正向和反向同步链路将暂停,本次切换中止。如您希望再次切换,请联系我们

    • 若您正向切换选择不带地址切换,后续操作步骤如下:

      1. 数据一致后,前端会提示“可以开始手动切换业务侧连接串”。此时修改业务侧连接串,将应用连接至PolarDB-X 1.0

        说明

        如您在24小时内无法完成修改业务连接串操作,可以自行用修改权限等方式确保目标库在切换过程中保持禁写。

      2. 持续观察目标库,确认所有应用已连接至源PolarDB-X 1.0后,单击确定目标库无业务连接,解除目标库的禁写。

        说明

        您可以使用show processlist命令查看连接的客户端IP,确定是否有来自业务侧的连接。

      3. 正向和反向同步链路将暂停,本次切换中止。如您希望再次切换,请联系我们