检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
for MySQL实例数据迁移到新DDM实例。 操作步骤 登录华为云控制台。 单击管理控制台左上角的,选择区域“华北-北京四”。 单击左侧的服务列表图标,选择“数据库 > 数据复制服务 DRS”。 单击“创建迁移服务”按钮,创建一个迁移任务,将源RDS for MySQL实例的数据迁移到DDM实例中。
0系列版本的RDS for MySQL实例,不支持Serverless类型和容器类型。 不支持GaussDB(for MySQL)实例和云耀数据库实例。 DDM暂不支持MySQL实例配置SSL连接。 禁止MySQL实例开启区分大小写。 如果您使用的MySQL版本为5.7,请您在MySQL实例创建完
A:根据最佳实践结果,一般建议DDM和RDS for MySQL的资源比保持在1:2。如果DDM是8核16GB,需要选择2个或以上8核16GB的RDS for MySQL实例,RDS for MySQL的具体数量还需参考业务整体数据量综合考虑。 对于生产业务使用的实例,RDS for MySQL需选择主备架构来保证高可用。
创建DDM实例 操作步骤 登录华为云控制台。 单击管理控制台左上角的,选择区域“华北-北京四”。 单击左侧的服务列表图标,选择“数据库 > 分布式数据库中间件 DDM”,进入DDM管理控制台。 在实例管理页面,单击页面右上方的“购买数据库中间件实例”。 按需设置实例相关信息和规格。参数说明请参考实例购买。
MySQL连接DDM时出现乱码如何解决 MySQL连接的编码和实际的编码不一致,可能导致DDM解析时出现乱码。 通过“default-character-set=utf8”指定客户端连接的编码即可。 如下所示: mysql -h 127.0.0.1 -P 5066 -D database
账号权限介绍 DDM的权限管理系统参考MySQL的权限管理进行实现,DDM支持大部分的MySQL的语法和权限类型。MySQL账号和权限系统的详细信息请参见MySQL官方文档。 本文档主要介绍DDM账号规则、权限级别、权限项、以及权限操作。 DDM里通过CREATE USER或GR
结构。 表2 表迁移策略 逻辑库类型 逻辑表类型 表结构迁移策略 表数据迁移策略 拆分 拆分表 在原表结构基础上增加拆分键声明(详见建表语句说明文档),形成适用于DDM的建表语句,连接DDM并登录对应逻辑库后执行。 通过DDM导入源表数据。 拆分 广播表 在原表结构基础上增加广播
创建目标库表结构 DRS目前仅支持迁移源端MySQL的数据到目标DDM,不支持迁移源库表结构及其他数据库对象。用户需要在目标库根据源端逻辑库的表结构,自行在目标库创建对应的表结构及索引。未在目标库创建的对象,视为用户不选择这个对象进行迁移。更对约束限制可参考使用须知。 操作步骤 登录华为云控制台。
{TABLE_NAME}查看源华为云上自建MySQL中数据表结构。 表2 表迁移策略 逻辑库类型 逻辑表类型 表结构迁移策略 表数据迁移策略 拆分 拆分表 在原表结构基础上增加拆分键声明(详见建表语句说明文档),形成适用于DDM的建表语句,连接DDM并登录对应逻辑库后执行。 通过DDM导入源表数据。 拆分 广播表
有临时表超限约束(Temp table limit exceeded)。 Join函数 select场景,建议join条件是每个表的拆分字段或使用广播表,或者是驱动表是一个小表(inner/left join驱动表是左表,right join驱动表是右表)。 不建议两个大表直接进行join操作。
查看user_test表数据 图2 查看address_test表数据 执行以下命令查看表数据分布情况。广播表各分片数据一致,拆分表数据会按照拆分算法分布在选取的分片中。 show topology from <table_name>; 图3 广播表user_test 图4 拆分表address_test
Online DDL DDM支持通用的Online DDL操作:增加字段、删除字段、修改字段、设置默认值、修改编码、修改表名等。 Online DDL主要功能为在对应DDL上,提供ALGORITHM、LOCK显示声明的支持,并提供透传至后端数据库节点能力(此功能需满足DDM内核版本大于等于3
); 广播表 在业务数据库中,存在一些数据量不大,更新频率较低,但常常需要用来做关联查询的表。 为了方便这类表与拆分表进行关联操作,DDM实例提供了一种“广播表”,广播表具有以下特点: 广播表在各分片中数据一致。插入、更新和删除数据会实时在每一个分片中执行。 对广播表的查询,仅在一个分片中执行。
操作流程 创建RDS for MySQL实例,并且将RDS for MySQL数据同步到DDM的主要任务流程如图1所示。 图1 流程图 父主题: 通过数据复制服务(DRS)将RDS for MySQL数据迁移到DDM
full innodb status指令查询RDS for MySQL相关信息 通过MySQL客户端连接DDM实例后,可直接输入show full innodb status指令查询该DDM实例所关联的RDS for MySQL实例信息。可查询信息如: 当前的时间及自上次输出以来经过的时长。
DDM支持通用的DDL操作:建库,建表,修改表结构等,但实现方式与普通的MySQL数据库有所区别。 在MySQL客户端执行DDL操作 rename table name不支持与其他DDL语句在同一条SQL执行。 对拆分表执行修改字段名操作的同时执行类似SELECT * [DDL相关表]等包含全字段的查询语句
INSERT或者UPDATE时,不支持插入或者更新拆分键值为DEFAULT关键字。 UPDATE不支持在一个语句中对同一字段重复更新。 UPDATE不支持关联更新拆分键。 UPDATE不支持自关联更新。 关联更新中,不支持在目标列的赋值语句或表达式中引用其它目标列,将造成更新结果不符合预期。 例如: update
在任务列表的右上角,单击刷新列表,可查看到最新的任务状态。 对于未启动、状态为配置中的任务,DRS默认保留3天,超过3天DRS会自动删除后台资源,当前任务状态不变。当用户再次配置时,DRS会重新申请资源。 父主题: 通过数据复制服务(DRS)将RDS for MySQL数据迁移到DDM
)。 UPDATE语句中的where_condition不支持计算表达式及其子查询。 不支持在多表更新中修改广播表(广播表中的列不可出现在 SET 中赋值语句的左侧)。 不支持更新逻辑表的拆分键字段,更新拆分键字段可能导致数据重新分布,DDM 暂不支持。 UPDATE操作不支持datetime(YYYY-MM-DD
如何选择DDM逻辑库分片数 逻辑库选择“非拆分”模式时,一个逻辑库仅对应一个MySQL实例,在该实例上仅创建1个分片。 逻辑库选择“拆分”模式时,一个逻辑库可对应多个MySQL实例,在每个实例上,可创建1-64个分片。如果因业务需要分片数超过64,请联系DDM技术人员。 分片平移