当RDS实例负载过大时,可以将该实例的一个数据库或表垂直拆分至另外一个单独的实例中。本文介绍如何通过双写方案和简易拆分方案实现垂直拆分。
背景信息
假设一个RDS实例上有数据库A和B,随着业务增长实例瓶颈也日趋可见,如想要减轻该实例的压力,您可以将数据库B垂直拆分至另外一个单独的实例中,详情请参见双写方案和简易拆分方案。
注意事项
- 您需要使用一个单独的实例作为目标实例,且目标实例的数据库账号权限需与源实例的数据库账号权限一致。支持的目标实例类型,请参见DTS数据迁移方案概览。
说明 为便于区分会话信息以及提升数据安全性,建议在源和目标实例中单独创建并授权一个数据库账号以供数据迁移使用。
- 需将目标实例的连接串加入应用程序中。
- 由于简易拆分方案需要短暂暂停业务并暂停向数据库写入数据,请选择业务低峰期操作以降低程序变更发布、切换实例过程中对业务的影响。
双写方案
说明 可以实现业务的灰度切流,最大限度保证业务不受影响,但您需要先改造业务的应用程序,使应用程序的相关数据能够同时写入源和目标实例的数据库B中。
简易拆分方案
说明 有一定的回滚失败风险,但无需改造业务的应用程序。