检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
通过DDM对RDS for MySQL实例进行分库分表 方案概述 RDS for MySQL准备 DDM准备 创建DRS迁移任务
使用mysqldump从MySQL导出数据非常缓慢的原因 mysqldump客户端的版本和DDM所支持的MySQL版本不一致,可能会导致从MySQL导出数据非常缓慢。 建议版本保持一致。 父主题: DDM使用类
RDS for MySQL准备 此操作默认新的RDS for MySQL实例已创建成功。如需创建实例,请参考购买RDS for MySQL实例。 父主题: 通过DDM对RDS for MySQL实例进行分库分表
创建RDS for MySQL实例 本章节介绍创建RDS for MySQL实例并构造测试数据。 创建实例 登录华为云控制台。 单击管理控制台左上角的,选择区域“华南-广州”。 单击左侧的服务列表图标,选择“数据库 > 云数据库 RDS”。 单击“购买数据库实例”。 配置实例名称和实例基本信息。
逻辑库模式选择拆分库,根据业务需求填写逻辑库总分片数,关联RDS for MySQL准备中已创建成功的新RDS for MySQL实例,然后单击“下一步”。 图1 关联RDS for MySQL实例 输入RDS for MySQL实例密码,进行数据节点可用性检测。测试成功后,单击“完成”。 逻辑库创建成功。
创建RDS for MySQL实例 本章节介绍创建DDM下关联的RDS for MySQL实例,创建步骤如下。 创建步骤 登录华为云控制台。 单击管理控制台左上角的,选择区域“华北-北京四”。 单击左侧的服务列表图标,选择“数据库 > 云数据库 RDS”。 单击“购买数据库实例”。 配置实例名称和实例基本信息。
如何选择数据节点RDS for MySQL的规格 数据节点RDS for MySQL的规格建议不小于DDM的规格,否则会产生木桶效应,影响性能。 示例: Q:例如DDM是8核16GB,那么RDS for MySQL的规格应该选多少?应该选择主备还是单机架构? A:根据最佳实践结果,一般建议DDM和RDS
创建DRS迁移任务 创建DRS迁移任务 确认迁移执行结果 父主题: 通过DDM对RDS for MySQL实例进行分库分表
填写实例迁移信息,更多参数的说明请参见MySQL迁移至DDM参数说明。 数据流动方向选择“入云”。 源数据库引擎选择“MySQL”。 目标数据库引擎选择“DDM”。 网络类型根据实际情况选择。 目标数据库实例选择创建DDM实例中购买成功的DDM实例。 迁移模式可根据您的业务情况选择“全量+增量”或者是“全量”。
for MySQL数据库中的表在DDM实例中重新创建,根据表的性质可选择创建为广播表、单表、拆分表。广播表和单表的使用场景请参考广播表和单表的使用场景。 图1 原数据库表 图2 address_test表数据 图3 user_test表数据 执行以下命令,将源数据库中的“user
目标DDM实例、RDS for MySQL实例所在ECS必须保证网络互通。 为了保持数据完整性,需要先停止业务后再进行数据迁移。 DDM不支持以自动新建库或者新建拆分表、广播表的方式导入数据。因此导入数据前需要先创建好相同名称的逻辑库,相同拆分表、广播表结构的逻辑表,然后再进行数据导入。各类逻辑表创建方式请参见表2。
放通安全组入方向规则。 从数据中心自建MySQL中将表数据导出到单独的SQL文本文件中,然后上传至ECS。 停止自建MySQL的业务系统,否则可能会导致导出数据不是最新的。 打开MySQL客户端,输入如下命令,连接自建MySQL,并导出自建MySQL表数据至SQL文本文件。 MySQL客户端版本为5
待迁移任务结束后,可登录DDM实例查看数据迁移结果。确保DDM实例数据与源数据库数据一致。 图1 查看user_test表数据 图2 查看address_test表数据 执行以下命令查看表数据分布情况。广播表各分片数据一致,拆分表数据会按照拆分算法分布在选取的分片中。 show topology
称”,并选择要关联的DDM账号、要关联的实例,单击“下一步”。 本示例中逻辑库模式为单库,逻辑库名称为db_test。 DRS目前仅支持迁移源端MySQL的数据到目标DDM,不支持迁移源库表结构及其他数据库对象,用户需要在目标库根据源端数据库的表结构创建对应的逻辑库。 图1 关联RDS
源端RDS for MySQL准备 创建源端VPC和安全组 创建RDS for MySQL实例 创建源端VPN 父主题: 通过数据复制服务(DRS)将RDS for MySQL数据迁移到DDM
登录华为云控制台。 单击管理控制台左上角的,选择区域“华北-北京四”。 单击左侧的服务列表图标,选择“数据库 > 分布式数据库中间件 DDM”,进入DDM管理控制台。 在实例管理页面,单击实例实例名称,进入实例基本信息页面。 单击左侧导航栏的“账号管理”页签,进入账号管理页面。 单
DDM准备 创建DDM实例 创建逻辑库并关联RDS for MySQL实例 创建DDM账号 创建目标库表结构 父主题: 通过DDM对RDS for MySQL实例进行分库分表
创建DDM实例 操作步骤 登录华为云控制台。 单击管理控制台左上角的,选择区域“华北-北京四”。 单击左侧的服务列表图标,选择“数据库 > 分布式数据库中间件 DDM”,进入DDM管理控制台。 在实例管理页面,单击页面右上方的“购买数据库中间件实例”。 按需设置实例相关信息和规格。参数说明请参考实例购买。
操作场景 本文将介绍如何通过DDM对已有RDS for MySQL实例进行分库分表。 操作流程 图1 流程图 前提条件 拥有华为账号。 新的RDS for MySQL实例已创建成功。 源RDS for MySQL实例与目标DDM实例、新RDS for MySQL实例必须处于相同VPC,且安全组配置相同。
VPN网关接入的虚拟私有云(VPC)和源端RDS for MySQL实例的VPC保持一致,即创建源端VPC和安全组中创建的VPC。 本端子网和源端RDS for MySQL实例所在VPC的子网保持一致,即创建源端VPC和安全组中创建的子网。 单击“立即购买”,核对VPN信息后单击“提交”完成支付。 VPN创