检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
MMDD按月日哈希 适用场景 MMDD适用于按一年的天数(即一年中日期)进行分表,分表的表名的下标就是一年中的第几天,一年最多366天。 使用说明 拆分键的类型必须是DATE/DATETIME/TIMESTAMP其中之一。 只能作为分表函数使用,但不能作为分库函数。 路由方式 根据拆分键的时间值所对应的日期在一年中对应的天数
DDM实例节点扩容V3 功能介绍 对指定的DDM实例的节点个数进行扩容,支持按需实例与包周期实例。 接口约束 请确保实例关联的RDS状态正常并且没有进行其他操作。 调试 您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例
DDM准备 创建DDM实例 创建逻辑库并关联RDS for MySQL实例 创建DDM账号 创建目标库表结构 父主题: 通过DDM对RDS for MySQL实例进行分库分表
nextval、currval在全局序列的使用 nextval返回下一个序列值,currval返回当前序列值。其中nextval可以通过nextval(n)返回n个唯一序列值。 nextval(n)只能单独用在select sequence.nextval(n)场景下并且不支持跨库操作
自定义HINT跳过执行计划缓存 DDM提供HINT来控制SELECT语句是否跳过缓存的执行计划。 HINT的格式为: /*!GAUSS:skip_plancache=flag */ 其中flag可以是true或者false,true代表跳过执行计划缓存,false代表不跳过。 目前只支持
如何解决JDBC驱动方式连接DDM异常问题 MySQL驱动( JDBC)通过Loadbalance方式连接DDM,在某些场景下连接切换时会陷入死循环,最终导致栈溢出。 问题定位 查看APP日志,定位异常原因。 例如,从以下日志中分析出异常最终原因为栈溢出。 Caused by: java.lang.StackOverflowError
MOD_HASH_CI算法 适用场景 适用于需要按用户ID或订单ID进行分库的场景。 使用说明 拆分键的数据类型必须是整数类型(INT, INTEGER, BIGINT, MEDIUMINT, SMALLINT, TINYINT, DECIMAL(支持精度为0的情况))或字符串类型
RDS for MySQL哪些高危操作会影响DDM RDS for MySQL相关高危操作如表1所示。 表1 RDS for MySQL高危操作 操作类别 操作 操作影响 RDS for MySQL控制台操作类 删除RDS for MySQL实例 RDS for MySQL实例删除后
YYYYDD按年日哈希 适用场景 适用于需要按年份与一年的天数进行分库的场景,建议该函数与tbpartition YYYYDD(ShardKey) 联合使用。 使用说明 拆分键的数据类型必须是DATE / DATETIME / TIMESTAMP其中之一。 路由方式 根据拆分键的时间值的年份与一年的天数计算哈希值
方案概述 操作场景 本文将介绍如何通过DDM对已有RDS for MySQL实例进行分库分表。 操作流程 图1 流程图 前提条件 拥有华为账号。 新的RDS for MySQL实例已创建成功。 源RDS for MySQL实例与目标DDM实例、新RDS for MySQL实例必须处于相同
RDS for MySQL准备 此操作默认新的RDS for MySQL实例已创建成功。如需创建实例,请参考购买RDS for MySQL实例。 父主题: 通过DDM对RDS for MySQL实例进行分库分表
创建DRS迁移任务 创建DRS迁移任务 确认迁移执行结果 父主题: 通过DDM对RDS for MySQL实例进行分库分表
MySQL连接DDM时出现乱码如何解决 MySQL连接的编码和实际的编码不一致,可能导致DDM解析时出现乱码。 通过“default-character-set=utf8”指定客户端连接的编码即可。 如下所示: mysql -h 127.0.0.1 -P 5066 -D database
如何处理DDM逻辑库与RDS实例的先后关系 DDM逻辑库与关联的RDS强相关,不允许直接删除关联的RDS,这会导致业务不可用且逻辑库也会删除失败。如果需要删除,先删除逻辑库再删除RDS。 父主题: DDM使用类
如何通过show full innodb status指令查询RDS for MySQL相关信息 通过MySQL客户端连接DDM实例后,可直接输入show full innodb status指令查询该DDM实例所关联的RDS for MySQL实例信息。可查询信息如: 当前的时间及自上次输出以来经过的时长
创建DDM实例 操作步骤 登录华为云控制台。 单击管理控制台左上角的,选择区域“华北-北京四”。 单击左侧的服务列表图标,选择“数据库 > 分布式数据库中间件 DDM”,进入DDM管理控制台。 在实例管理页面,单击页面右上方的“购买数据库中间件实例”。 按需设置实例相关信息和规格。
全局序列在INSERT或REPLACE语句中的使用 要想在同一个实例下实现跨逻辑库序列的全局唯一,可以在INSERT语句或者REPLACE语句中结合全局序列一起使用。INSERT语句和REPLACE语句支持nextval和currval两个方式序列的获取。其中,nextval表示返回下一个序列值
创建DDM账号 操作步骤 登录华为云控制台。 单击管理控制台左上角的,选择区域“华北-北京四”。 单击左侧的服务列表图标,选择“数据库 > 分布式数据库中间件 DDM”,进入DDM管理控制台。 在实例管理页面,单击实例实例名称,进入实例基本信息页面。 单击左侧导航栏的“账号管理”页签
创建目标库表结构 操作步骤 登录华为云控制台。 单击管理控制台左上角的,选择区域“华北-北京四”。 单击左侧的服务列表图标,选择“数据库 > 分布式数据库中间件 DDM”,进入DDM管理控制台。 在实例管理页面,单击实例对应操作栏的“登录”按钮。 在实例登录窗口输入创建DDM账号中创建的
确认迁移执行结果 操作步骤 待迁移任务结束后,可登录DDM实例查看数据迁移结果。确保DDM实例数据与源数据库数据一致。 图1 查看user_test表数据 图2 查看address_test表数据 执行以下命令查看表数据分布情况。广播表各分片数据一致,拆分表数据会按照拆分算法分布在选取的分片中