检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
语法。 不支持单条语句中DROP多张表。 DDL语句不支持多语句。 广播表、拆分表不支持创建外键。 不支持创建以“_ddm”为前缀的表。 不支持创建TEMPOPARY类型的拆分表、广播表。 create table中的unique key只能保证物理表内唯一,无法保证全局唯一。 不支持修改全局二级索引的字段。
迁移策略 Mycat与DDM数据表类型不同,迁移策略也有所差异,详情如表1所示。 表1 迁移策略 Mycat表类型 DDM表类型 迁移策略 非拆分表 单表 Mycat导出表结构和表数据。 连接目标DDM关联的RDS将数据导入至目标DDM(非拆分表场景)。 拆分表:分片规则为hash类(含年月日等日期类)
REPEAT、WHILE…DO…END WHILE 等复合语句。 DDL语法 拆分表和广播表不支持外键。 不支持修改分片字段(拆分键)。 不支持ALTER DATABASE Syntax。 不支持从另一张表创建新的拆分表、广播表。 create table不支持generated column语法。
仅支持数据节点为RDS for MySQL。 不支持创建中、冻结、异常实例。 CPU负载高的情况下,Kill会话请求有一定概率会超时(大约1分钟),可以稍后刷新会话列表查看目标会话是否还存在,如果还存在则需要重新执行Kill会话操作。 操作步骤 登录分布式数据库中间件控制台。 在实例管理列表页面,单击进入目标实例。
创建表 禁止创建表名以"_ddm"为前缀的表,系统默认认定此类表为系统内部表。 拆分表不支持全局唯一索引,当唯一键和拆分键不一致时,不能保证数据的唯一性。 建议使用bigint型作为自增键的数据类型。tinyint、smallint、mediumint、integer、int数据
创建逻辑库时,仅支持关联和DDM实例处于相同VPC的数据节点,且数据节点没有被其他DDM实例使用。DDM将在关联的数据节点上新建数据库,不会影响已有的库表。 创建逻辑库时,同一个逻辑库,MySQL大版本需要相同,不可以混用。 数据节点的规格建议不小于DDM的规格,否则会影响性能。 创建逻辑库时,同一个
用,返回结果与MySQL中的返回结果可能不一致。 不支持的函数 表5 函数的限制 函数 限制条件 ROW_COUNT() DDM 暂不支持ROW_COUNT()函数。 COMPRESS() DDM 暂不支持COMPRESS()函数。如果无法确认函数是否能下推到RDS,请不要使用该函数。
DDM支持如下两种方式进行数据迁移。 基于MySQL官方客户端工具,此部分以RDS for MySQL 为例重点介绍该迁移方式。 基于数据复制服务DRS。 迁移场景 数据迁移主要有以下场景: 场景一:数据中心自建MySQL迁移到DDM 场景二:其他云MySQL迁移到DDM 场景三:华为云上自建MySQL迁移到DDM
上述SQL返回值为1,表示2019-01-15是周二,因为周日为一周中的第一天,所以周二则为一周中的第三天。 算法计算方式 表1 算法举例 条件 算法 举例 无 分表路由结果 = 分表拆分键值 % 分表数 分表拆分键值 :2019-1-15 分表:3 % 7= 3 建表语法 create
片变更的操作流程。 分库分表 通过DDM对RDS for MySQL实例进行分库分表 本实践主要介绍通过DDM对已有RDS for MySQL实例进行分库分表的操作流程。 数据迁移 数据中心自建MySQL迁移到DDM 企业当前使用数据中心自建MySQL,希望能使用DDM将数据进行分布式存储。
例如:2019-1-15,当根据分库键确定分库后,确定分表的计算方式是:月份mod分表数,即:1 mod 12 = 1。 算法计算方式 表1 算法举例 条件 算法 举例 无 分表路由结果 = 分表拆分键值 % 分表数 分表拆分键值 :2019-1-15 分表:1 % 12 = 1 建表语法 create table
DN管理介绍 DN管理提供数据节点管理服务,管理DDM实例关联的RDS for MySQL实例,展现实例的状态、存储、规格、读权重等信息,提供设置读权重、同步DN信息、开启读写分离的快捷操作。 表1 功能介绍 功能 使用场景 同步DN信息 主要用于数据节点相关信息变化时(如增删只
如何处理表中存在主键重复的数据 场景 DDM实例的逻辑表中已存在主键数据类型边界值的记录,如果插入的数据超过主键数据类型的范围,表中会出现主键重复的数据。 处理方法 登录云服务管理控制台。 在RDS for MySQL的“实例管理”页面,查找DDM实例对应的RDS for MySQL实例,单击目标RDS
03:44 访问DDM实例 分布式数据库中间件 DDM 创建逻辑库和逻辑表 03:13 创建逻辑库和逻辑表 分布式数据库中间件 DDM 申请DDM实例并导入RDS实例 03:03 申请DDM实例并导入RDS实例 分布式数据库中间件 DDM 访问DDM实例 04:08 访问DDM实例
分布式数据库中间件(Distributed Database Middleware,简称DDM),是一款分布式关系型数据库中间件。兼容MySQL协议,专注于解决数据库分布式扩展问题,突破传统数据库的容量和性能瓶颈,实现海量数据高并发访问。 DDM支持的功能如表1所示。 表1 DDM服务功能列表 功能分类 功能描述
目前列名必须指定,且必须包括分片字段,否则没办法确定路由。 其他参数参考MySQL的load data infile官方文档说明。其他参数的先后顺序不能乱,顺序参考官方说明。 数据导入阶段会在一定程度上影响DDM以及RDS for MySQL实例性能,请选择在业务低峰时间导入。 建议不要同时发起多个LOAD
ERRORS语句不支持LIMIT/COUNT的组合。SHOW语句会随机下发到某个物理分片,每个物理分片如果在不同的RDS for MySQL实例上,查得的变量或者表信息可能不同。 父主题: SQL语法
java:104) at com.mysql.jdbc.MysqlIO.invokeStatementInterceptorsPost(MysqlIO.java:2885) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2808)
通过数据复制服务(DRS)将RDS for MySQL数据迁移到DDM 介绍如何通过DRS服务将RDS for MySQL数据迁移到DDM实例单库中。 通过DDM对RDS for MySQL实例进行分库分表 介绍如何通过DDM对已有RDS for MySQL实例进行分库分表。 跨分片复杂SQL调优
使用mysqldump从MySQL导出数据非常缓慢的原因 导入数据到DDM过程中出现主键重复 如何处理数据迁移过程中自增列报错:主键重复 如何处理配置参数未超时却报错 如何处理DDM逻辑库与RDS实例的先后关系 DDM逻辑库删除后,数据节点里面残留着部分预留的DDM数据库和一些DDM的账户,这些是否需要手动删除