检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
DDL概述 DDM支持通用的DDL操作:建库,建表,修改表结构等,但实现方式与普通的MySQL数据库有所区别。 在MySQL客户端执行DDL操作 rename table name不支持与其他DDL语句在同一条SQL执行。 对拆分表执行修改字段名操作的同时执行类似SELECT *
型的范围,表中会出现主键重复的数据。 处理方法 登录云服务管理控制台。 在RDS for MySQL的“实例管理”页面,查找DDM实例对应的RDS for MySQL实例,单击目标RDS for MySQL实例名称,进入实例的“基本信息”页面。 在基本信息页面的左侧导航栏中选择“参数修改”。
通过数据复制服务(DRS)将RDS for MySQL数据迁移到DDM 介绍如何通过DRS服务将RDS for MySQL数据迁移到DDM实例单库中。 通过DDM对RDS for MySQL实例进行分库分表 介绍如何通过DDM对已有RDS for MySQL实例进行分库分表。 跨分片复杂SQL调优
CPU使用率 该指标用于统计当前DDM节点的CPU利用率。 0~100% DDM节点 1分钟 ddm_mem_util 内存使用率 该指标用于统计当前DDM节点的内存使用率。 0~100% DDM节点 1分钟 ddm_bytes_in 网络输入吞吐量 该指标用于统计当前DDM节点平均每秒的输入流量。
创建逻辑库时,仅支持关联和DDM实例处于相同VPC的数据节点,且数据节点没有被其他DDM实例使用。DDM将在关联的数据节点上新建数据库,不会影响已有的库表。 创建逻辑库时,同一个逻辑库,MySQL大版本需要相同,不可以混用。 数据节点的规格建议不小于DDM的规格,否则会影响性能。 创建逻辑库时,同一个
功能总览 分布式数据库中间件(Distributed Database Middleware,简称DDM),是一款分布式关系型数据库中间件。兼容MySQL协议,专注于解决数据库分布式扩展问题,突破传统数据库的容量和性能瓶颈,实现海量数据高并发访问。 DDM支持的功能如表1所示。 表1
明细账单可以通过多维度展示客户账单的详细信息。一般通过设置统计维度为“按使用量”,统计周期为“按账期”来统计资源在某个月份的总开销,建议您核对表2所示的信息是否和实际相符。 表2 DDM明细账单 产品类型 分布式数据库中间件 DDM 产品 分布式数据库中间件集群 计费模式 按需 资源名称/ID DDM实例的名称和ID
by和Order by SQL调优建议 当group by 字段不是表中现有的数据列时,可以使用generated column机制(MySQL5.7版本以上支持,5.6及之前版本可新建普通字段和添加索引),创建新列并添加索引,将新创建字段作为group by条件,避免使用临时表。
常用概念 数据节点 数据节点是分布式数据库中间件服务的最小管理单元,表示DDM关联的RDS for MySQL实例,DDM目前仅支持这种引擎,一个实例代表了一个独立运行的数据库。您可以在一个DDM实例中通过创建多个逻辑库管理多个数据节点,并且可以独立访问数据节点。 DDM实例自身
元数据恢复特性用于误删库或者RDS for MySQL本身出现异常等业务场景,可根据过去的某个时间点,将Metadata数据与已经PITR恢复完成的RDS for MySQL实例进行匹配,重建DDM和RDS for MySQL的关联关系,恢复DDM。当前该特性仅支持RDS for MySQL引擎。
企业在华为云上自建MySQL数据库,希望能使用DDM将数据进行分布式存储。 本实践主要介绍将华为云上自建MySQL数据库中数据迁移到DDM的操作流程。 从华为云RDS for MySQL迁移到DDM 本实践主要介绍通过数据复制服务(DRS)将RDS for MySQL数据迁移到DDM的操作流程。
单击“连接测试”,若显示连接成功,单击“确定”,等待1-2分钟即可连接成功。连接失败会直接弹出失败原因,请修改后重试。 通过其他可视化的MySQL工具(例如 Workbench)连接DDM实例的操作与此章基本一致,不做详细描述。
RDS相关类 数据库表名是否区分大小写 RDS for MySQL哪些高危操作会影响DDM 如何处理表中存在主键重复的数据 如何通过show full innodb status指令查询RDS for MySQL相关信息 如何选择数据节点RDS for MySQL的规格
广播表和单表的使用场景 单表 DDM管理控制台不提供单表创建操作,用户可以通过MySQL客户端或应用程序连接到DDM实例后自行创建。 如果一张表的数据量预估在1000万条以下,且没有与其他拆分表进行关联查询的需求,建议将其设置为单表类型,存储在默认分片中。 单表创建样例,不做任何拆分:
您还可以通过这个视频教程了解如何构造请求调用API:https://bbs.huaweicloud.com/videos/102987 。 请求URI 请求URI由如下部分组成。 {URI-scheme} :// {Endpoint} / {resource-path} ?{query-string} 尽管请求
分布在很多个RDS实例上的不同数据库分片内。在DDM中一个事务中对各个逻辑表的增删改查很有可能实际发生在多个RDS实例上的不同数据库分片上,每个RDS实例上同一数据库分片内所发生的对分片内数据表的一系列操作相当于一个本地事务,这样DDM层面的事务就相当于由多个RDS实例上的本地事
慢查询 操作场景 DDM提供“慢查询”功能,将指定时间内的慢SQL语句进行统计分类,把结构相同的慢SQL语句整理成SQL模板,您可以查看指定区间内的所有慢SQL类型,针对这些类型进行优化处理。您也可以下载慢日志进行业务分析。 查看日志明细 登录分布式数据库中间件控制台。 在实例管理列表页面,单击进入目标实例。
账号规则 账号 与MySQL不同,DDM只通过用户名确定一个账号,而不是通过'username'@'host'方式来确定一个账号。 用户名规则 大小写敏感。 长度为1-32个字符,必须以字母开头,可以包含字母,数字、下划线,不能包含其它特殊字符。 密码规则 长度为8~32个字符。
迁移前准备 准备可以访问旧RDS实例、目标DDM实例和目标DDM实例关联的RDS实例的ECS。 确保旧RDS实例、目标DDM实例和目标DDM实例关联的RDS实例都在同一个VPC下,保证网络互通。 旧RDS实例、目标DDM实例和目标DDM实例关联的RDS实例的安全组建议配置相同,如果不同则需要放开对应端口访问。
RDS_PORT为RDS实例的端口。 RDS_USER为RDS实例的用户名。 DB_NAME为RDS数据库名称,如果导入的是单表,DB_NAME为RDS第一个分片的物理数据库。 mysql_table_schema.sql为待导入的表结构文件名。 mysq_table_data.sql为待导入的表数据文件名。