检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
通过DDM对RDS for MySQL实例进行分库分表 方案概述 RDS for MySQL准备 DDM准备 创建DRS迁移任务
创建DRS迁移任务 创建DRS迁移任务 确认迁移执行结果 父主题: 通过DDM对RDS for MySQL实例进行分库分表
本章节介绍如何创建DRS迁移任务,将源RDS for MySQL实例数据迁移到新DDM实例。 操作步骤 登录华为云控制台。 单击管理控制台左上角的,选择区域“华北-北京四”。 单击左侧的服务列表图标,选择“数据库 > 数据复制服务 DRS”。 单击“创建迁移服务”按钮,创建一个迁移任务,将源RDS for
新建的DDM实例或者满足使用条件的已有实例均不能挂载RDS for MySQL实例,不能创建逻辑库和账号。 在云数据库 RDS控制台,创建与源DDM实例下相同数量的RDS for MySQL实例。 新创建的RDS for MySQL实例版本不得低于源DDM下RDS for MySQL实例版本号。 每个实例存储空间不得小于源DDM实例下的RDS
ECS已安装MySQL官方客户端,MySQL客户端版本建议为5.6或5.7。 Redhat系列Linux安装命令:yum install mysql mysql-devel Debian系列Linux安装命令:apt install mysql-client-5.7 mysql-client-core-5.7
单击左侧导航栏的“账号管理”页签,进入账号管理页面。 单击“创建DDM账号”按钮进入创建DDM账号页面。 选择创建逻辑库并关联RDS for MySQL实例中创建的逻辑库进行关联,设置用户名和密码以及账号权限,单击“确定”按钮进行账号创建。 图1 创建DDM账号 DDM账号创建成功。
RITHM、LOCK显示声明的支持,并提供透传至后端数据库节点能力(此功能需满足DDM内核版本大于等于3.1.0版本)。 当DDM实例关联的DN实例为MySQL5.7版本时,Online DDL操作支持以下语法: ALTER TABLE tbl_name [alter_option
在实例管理页面,单击实例对应操作栏的“登录”按钮。 在实例登录窗口输入创建DDM账号中创建的DDM账号和密码,进入数据管理服务进行建表操作。 建表操作是将源RDS for MySQL数据库中的表在DDM实例中重新创建,根据表的性质可选择创建为广播表、单表、拆分表。广播表和单表的使用场景请参考广播表和单表的使用场景。
ECS已安装MySQL官方客户端,MySQL客户端版本建议为5.6或5.7。 Redhat系列Linux安装命令:yum install mysql mysql-devel Debian系列Linux安装命令:apt install mysql-client-5.7 mysql-client-core-5
by和Order by SQL调优建议 当group by 字段不是表中现有的数据列时,可以使用generated column机制(MySQL5.7版本以上支持,5.6及之前版本可新建普通字段和添加索引),创建新列并添加索引,将新创建字段作为group by条件,避免使用临时表。 保持group
通过Navicat客户端连接DDM实例 介绍如何获取弹性公网的IP地址,并通过Navicat客户端连接DDM实例。 通过数据复制服务(DRS)将RDS for MySQL数据迁移到DDM 介绍如何通过DRS服务将RDS for MySQL数据迁移到DDM实例单库中。 通过DDM对RDS for
查。 连接成功后单击“登录”。 查看并确认目标库名和表名等,确认相关数据是否迁移完成。 父主题: 通过数据复制服务(DRS)将RDS for MySQL数据迁移到DDM
创建DDM实例 操作步骤 登录华为云控制台。 单击管理控制台左上角的,选择区域“华北-北京四”。 单击左侧的服务列表图标,选择“数据库 > 分布式数据库中间件 DDM”,进入DDM管理控制台。 在实例管理页面,单击页面右上方的“购买数据库中间件实例”。 按需设置实例相关信息和规格。参数说明请参考实例购买。
确认迁移执行结果 操作步骤 待迁移任务结束后,可登录DDM实例查看数据迁移结果。确保DDM实例数据与源数据库数据一致。 图1 查看user_test表数据 图2 查看address_test表数据 执行以下命令查看表数据分布情况。广播表各分片数据一致,拆分表数据会按照拆分算法分布在选取的分片中。
查看购买成功的DDM实例。 图2 购买成功 步骤二:购买RDS for MySQL实例 进入购买云数据库RDS页面。 填选实例信息后单击“立即购买”。 仅支持5.7、8.0版本的RDS for MySQL实例与DDM实例进行关联。 RDS for MySQL实例的虚拟私有云(VPC)和子网必须和D
目前列名必须指定,且必须包括分片字段,否则没办法确定路由。 其他参数参考MySQL的load data infile官方文档说明。其他参数的先后顺序不能乱,顺序参考官方说明。 数据导入阶段会在一定程度上影响DDM以及RDS for MySQL实例性能,请选择在业务低峰时间导入。 建议不要同时发起多个LOAD
DATA_NODE: 分库间并行扫描,同一分库内各分片串行扫描, RDS_INSTANCE: RDS实例间并行扫描,同一RDS实例内各分片串行扫描。 PHY_TABLE: 各物理分片全部并行扫描。 枚举值: RDS_INSTANCE DATA_NODE PHY_TABLE con
例如ECS、DDM、RDS分别配置了安全组:sg-ECS、sg-DDM、sg-RDS。 例如DDM实例服务端口为5066,RDS for MySQL实例服务端口为3306。 以下规则,远端可使用安全组,也可以使用具体的IP地址。 ECS所在安全组需要增加下图中的入方向规则,以保证客户端能正常访问DDM实例:
如何选择DDM逻辑库分片数 逻辑库选择“非拆分”模式时,一个逻辑库仅对应一个MySQL实例,在该实例上仅创建1个分片。 逻辑库选择“拆分”模式时,一个逻辑库可对应多个MySQL实例,在每个实例上,可创建1-64个分片。如果因业务需要分片数超过64,请联系DDM技术人员。 分片平移
DDM内核版本需大于等于3.1.0版本。 开启读写分离 登录分布式数据库中间件控制台。 在实例管理列表页面,选择目标实例。 单击实例名称,进入基本信息页面。 在左侧导航栏,选择“DN管理”页签,单击“开启读写分离”。 在弹窗中单击“确定”,开启读写分离。 对于RDS for MySQL实例来说,开启