检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
读写分离操作指导 DDM读写分离功能可以将只读查询的流量按比例分摊至下挂数据节点的主实例和只读实例,从而减轻主实例的工作负担,保障读写事务的性能。此功能对应用透明,业务代码无需改造,只需要在控制台上设置主实例和只读实例的读权重,即可实现将读流量按照权重分流到主实例和只读实例上,写流量不受影响
创建表 禁止创建表名以"_ddm"为前缀的表,系统默认认定此类表为系统内部表。 拆分表不支持全局唯一索引,当唯一键和拆分键不一致时,不能保证数据的唯一性。 建议使用bigint型作为自增键的数据类型。tinyint、smallint、mediumint、integer、int数据类型不建议作为自增键的类型
预检查 为了避免分片变更失败,请您最晚在变更前一天完成以下内容的检查。 预检查内容 表1 预检查内容 检查内容 检查目的 检查未通过解决方案 表名长度检查 分片变更需要数据重分布时(例如:增加分片),会创建临时表,临时表的表名长度会略长于原表名,需确保临时表的表名长度不超过MySQL
DDM事务模型 因为DDM中的表一般都做了分库分表,使得这些表中的数据可能分布在很多个RDS实例上的不同数据库分片内。在DDM中一个事务中对各个逻辑表的增删改查很有可能实际发生在多个RDS实例上的不同数据库分片上,每个RDS实例上同一数据库分片内所发生的对分片内数据表的一系列操作相当于一个本地事务
不支持的特性和使用限制 不支持的特性 不支持存储过程。 不支持触发器。 不支持视图。 不支持事件。 不支持自定义函数。 不支持外键约束、外键关联。 不支持全文索引和空间函数。 不支持临时表。 不支持BEGIN…END、LOOP…END LOOP、REPEAT…UNTIL…END REPEAT
WEEK按星期哈希 适用场景 WEEK适用于按周数的日期目进行分表,分表的表名的下标分别对应一周中的各个日期(星期一到星期天)。 使用说明 拆分键的类型必须是DATE/DATETIME/TIMESTAMP其中之一。 只能作为分表函数使用,但不能作为分库函数。 路由方式 根据拆分键的时间值所对应的一周之中的日期进行取余运算并得到分表下标
YYYYDD按年日哈希 适用场景 适用于需要按年份与一年的天数进行分库的场景,建议该函数与tbpartition YYYYDD(ShardKey) 联合使用。 使用说明 拆分键的数据类型必须是DATE / DATETIME / TIMESTAMP其中之一。 路由方式 根据拆分键的时间值的年份与一年的天数计算哈希值
使用mysqldump从MySQL导出数据非常缓慢的原因 mysqldump客户端的版本和DDM所支持的MySQL版本不一致,可能会导致从MySQL导出数据非常缓慢。 建议版本保持一致。 父主题: DDM使用类
YYYYWEEK按年周哈希 适用场景 适用于需要按年份与一年的周数进行分库的场景,建议该函数与tbpartition YYYYWEEK(ShardKey) 联合使用。 使用说明 拆分键的数据类型必须是DATE / DATETIME / TIMESTAMP其中之一。 路由方式 根据拆分键的时间值的年份与一年的周数计算哈希值
UPDATE 常用语法 UPDATE table_reference SET col_name1={expr1} [, col_name2={expr2}] ... [WHERE where_condition] 语法限制 不支持使用子查询(相关子查询和非相关子查询)。 UPDATE
拆分算法概述 支持的拆分算法概览 DDM是一个支持既分库又分表的数据库服务,目前DDM分库函数与分表函数的支持情况如下: 表1 拆分算法概览表 拆分函数 描述 能否用于分库 能否用于分表 MOD_HASH 简单取模 是 是 MOD_HASH_CI 简单取模(大小写不敏感) 是 是
标签 标签管理服务(Tag Management Service,TMS)用于用户在云平台,通过统一的标签管理各种资源。TMS服务与各服务共同实现标签管理能力,TMS提供全局标签管理能力,各服务维护自身标签管理。 使用须知 标签由“键”和“值”组成,每个标签中的一个“键”只能对应一个
创建账号 当同一数据库实例或同一数据库需要不同权限的用户访问时,可创建多个用户。您可以在分布式数据库中间件控制台创建所需的用户账号。 操作步骤 登录分布式数据库中间件控制台。 在实例管理列表页面,单击目标实例名称,进入实例基本信息页面。 在左侧导航栏选择“账号管理”,进入账号管理页面
常用概念 数据节点 数据节点是分布式数据库中间件服务的最小管理单元,表示DDM关联的RDS for MySQL实例,DDM目前仅支持这种引擎,一个实例代表了一个独立运行的数据库。您可以在一个DDM实例中通过创建多个逻辑库管理多个数据节点,并且可以独立访问数据节点。 DDM实例自身不存储客户业务相关数据
创建源端VPN 登录华为云控制台。 单击管理控制台左上角的,选择区域“华南-广州”。 单击左侧的服务列表图标,选择“网络 > 虚拟专用网络 VPN”。 在左侧导航栏选择“虚拟专用网络 > 企业版-VPN网关”。 在“VPN网关”界面,单击“创建VPN网关”,更多参数的说明请参见创建
通过HINT指定分片直接执行SQL DDM提供HINT在一个或多个分片上执行SQL语句。 HINT支持以下两种格式: 一个分片上执行SQL:/*+db=<physical_db_name>*/ <your query>; 多个分片上执行SQL:/*+db={<physical_db_name1
网络访问使用限制 在使用DDM过程中,对于网络访问存在一些使用限制。 用户购买的数据节点、部署应用程序的ECS、DDM实例必须属于同一个VPC。 当用户需要在自己电脑访问DDM服务时,需要为DDM开通EIP服务,然后通过EIP访问DDM。 父主题: 使用限制
权限管理 如果账号已经能满足您的要求,不需要创建独立的IAM用户进行权限管理,您可以跳过本章节,不影响您使用DDM服务的其它功能。 如果您需要对购买的DDM资源,为企业中的员工设置不同的访问权限,为达到不同员工之间的权限隔离,您可以使用统一身份认证服务(Identity and Access
包年/包月 包年/包月是一种先付费再使用的计费模式,您可以预先购买分布式数据库中间件并获得一定程度的价格优惠。本文将介绍包年/包月分布式数据库中间件的计费规则。 适用场景 包年/包月计费模式适用于长期、稳定的业务需求。以下是一些适用于包年/包月计费模式的业务场景: 稳定业务需求:对于长期运行且资源需求相对稳定的业务
设置读权重 主要用于调整主实例和只读实例的读写权重。对于拥有较多数据节点的DDM实例来说,可以批量配置数据节点读权重。 使用须知 如果数据节点未挂载只读实例,该主实例无法设置权重。 批量设置读权重 登录分布式数据库中间件控制台。 在实例管理列表页面,选择目标实例。 单击实例名称,进入基本信息页面