TDSQL-C MySQL 版支持通过 DTS 数据传输服务构建异地灾备流程,满足异地容灾,保障数据库平稳运行。
场景说明
如果用户的 TDSQL-C MySQL 版集群部署在单个地域中,可能会因为断电、网络中断等不可抗因素而导致服务中断。
针对这种情况,用户可以在另一个地域构建灾备中心,以提高服务可用性。使用 DTS 数据传输服务可以在业务中心和灾备中心之间持续同步数据更新,并保持地域间副本同步。如果业务地域发生故障,用户可以将请求切换到灾备地域。
通过构建异地灾备架构,当某个数据中心出现灾难性事故时,可以将发生异常的数据中心的流量划拨到其他数据中心,实现跨地域的快速故障转移,保证业务的正常运行。
建立异地灾备流程
说明:
步骤二:使用 DTS 数据传输服务搭建异地灾备流程
1. 登录 数据同步购买页,选择相应配置,单击立即购买。
参数 | 描述 |
计费模式 | 支持包年包月和按量计费。 |
源实例类型 | 选择 TDSQL-C MySQL,购买后不可修改。 |
源实例地域 | 选择源实例所在地域,购买后不可修改。 |
目标实例类型 | 选择 TDSQL-C MySQL,购买后不可修改。 |
目标实例地域 | 选择目的实例所在地域,购买后不可修改。 |
规格 |
2. 购买完成后,返回 数据同步列表,可看到刚创建的数据同步任务,刚创建的同步任务需要进行配置后才可以使用。
3. 在数据同步列表,单击操作列的配置,进入配置同步任务页面。
4. 在配置同步任务页面,配置源端实例、账号密码,配置目标端实例、账号和密码,测试连通性后,单击下一步。
因源数据库部署形态和接入类型的交叉场景较多,各场景同步操作步骤类似,如下仅提供典型场景的配置示例,其他场景请用户参考配置。
以 TDSQL-C MySQL 同步至 TDSQL-C MySQL 为例:
设置项 | 参数 | 描述 |
任务设置 | 任务名称 | DTS 会自动生成一个任务名称,用户可以根据实际情况进行设置。 |
| 运行模式 | 支持立即执行和定时执行两种模式。 |
源实例设置 | 源实例类型 | 购买时所选择的源实例类型,不可修改。 |
| 源实例地域 | 购买时选择的源实例所在地域,不可修改。 |
| 服务提供商 | 自建数据库(包括云服务器上的自建)或者腾讯云数据库,请选择“普通”;第三方云厂商数据库,请选择对应的服务商。本场景选择“普通”。 |
| 接入类型 | 公网:源数据库可以通过公网 IP 访问。 云数据库:源数据库属于腾讯云数据库实例。 |
| 实例 ID | |
| 账号 | 源实例账号,账号权限需要满足要求。 |
| 密码 | 源实例账号的密码。 |
目标实例设置 | 目标实例类型 | 购买时选择的目标实例类型,不可修改。 |
| 目标实例地域 | 购买时选择的目标实例地域,不可修改。 |
| 接入类型 | 根据您的场景选择,本场景选择“云数据库”。 |
| 实例 ID | 选择目标实例 ID。 |
| 账号 | 目标实例账号,账号权限需要满足要求。 |
| 密码 | 目标实例账号的密码。 |
5. 在设置同步选项和同步对象页面,将对数据初始化选项、数据同步选项、同步对象选项进行设置,在设置完成后单击保存并下一步。
说明:
当初始化类型仅选择全量数据初始化,系统默认用户在目标库已经创建了表结构,不会进行表结构同步,也不会校验源库和目标库是否有同名表,所以当用户同时在已存在同名表中选择前置校验并报错,则校验并报错功能不生效。
如果用户在同步过程中确定会对某张表使用 rename 操作(例如将 table A rename 为 table B),则同步对象需要选择 table A 所在的整个库(或者整个实例),不能仅选择 table A,否则系统会报错。
设置项 | 参数 | 描述 |
数据初始化选项 | 初始化类型 | 结构初始化:同步任务执行时会先将源实例中表结构初始化到目标实例中。 全量数据初始化:同步任务执行时会先将源实例中数据初始化到目标实例中。仅选择全量数据初始化的场景,用户需要提前在目标库创建好表结构。默认两者都勾上,可根据实际情况取消。 |
| 已存在同名表 | 前置校验并报错:存在同名表则报错,流程不再继续。 忽略并继续执行:全量数据和增量数据直接追加目标实例的表中。 |
数据同步选项 | 冲突处理机制 | 冲突报错:在同步时发现表主键冲突,报错并暂停数据同步任务。 冲突忽略:在同步时发现表主键冲突,保留目标库主键记录。 冲突覆盖:在同步时发现表主键冲突,用源库主键记录覆盖目标库主键记录。 |
| 同步操作类型 | |
同步对象选项 | 源实例库表对象 | 选择待同步的对象,支持基础库表、视图、存储过程和函数。高级对象的同步是一次性动作,仅支持同步在任务启动前源库中已有的高级对象,在任务启动后,新增的高级对象不会同步到目标库中。更多详情,请参考 同步高级对象。 |
| 已选对象 | 支持库表映射(库表重命名),将鼠标悬浮在库名、表名上即显示编辑按钮,单击后可在弹窗中填写新的名称。 选择高级对象进行同步时,建议不要进行库表重命名操作,否则可能会导致高级对象同步失败。 |
| 是否同步 Online DDL 临时表 | 如果使用 gh-ost、pt-osc 工具对源库中的表执行 Online DDL 操作,DTS 支持将 Online DDL 变更产生的临时表迁移到目标库。 勾选 gh-ost,DTS 会将 gh-ost 工具产生的临时表名(`_表名_ghc`、`_表名_gho`、`_表名_del`)迁移到目标库。 勾选 pt-osc, DTS 会将 pt-osc 工具产生的临时表名(`_表名_new`、 `_表名_old`)迁移到目标库。 |
6. 在校验任务页面,完成校验并全部校验项通过后,单击启动任务。
如果校验任务不通过,可以参考 校验不通过处理方法 修复问题后重新发起校验任务。
失败:表示校验项检查未通过,任务阻断,需要修复问题后重新执行校验任务。
警告:表示检验项检查不完全符合要求,可以继续任务,但对业务有一定的影响,用户需要根据提示自行评估是忽略警告项还是修复问题再继续。
7. 返回数据同步任务列表,任务开始进入运行中状态。
说明
选择操作列的更多 > 结束可关闭同步任务,请您确保数据同步完成后再关闭任务。
8. (可选)您可以单击任务名,进入任务详情页,查看任务初始化状态和监控数据。