检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
高危操作提示 在您使用DDM过程中,请不要进行以下高危操作: 为避免系统表、元数据等信息被误清理,用户尽量避免直连DN节点进行数据操作。 为避免元数据丢失,用户请不要清理DDM系统表(如:TBL_DRDS_TABLE、MYCAT_SEQUENCE)。 父主题: 使用限制
创建DRS迁移任务 创建DRS迁移任务 确认迁移执行结果 父主题: 通过DDM对RDS for MySQL实例进行分库分表
instance_id 是 String DDM实例ID。 database_name 是 String 逻辑库名称。 表2 Query参数 参数 是否必选 参数类型 描述 delete_dn_data 是 Boolean 是否同时删除关联后端数据库实例上存储的数据。 取值为true:删除。
DD 按日期哈希 否 是 MMDD 按月日哈希 否 是 WEEK 按星期哈希 否 是 分库的拆分键及分表的拆分键,均不支持为空。 在DDM中,一张逻辑表的拆分方式是由拆分函数(包括分片数目与路由算法)与拆分键(包括拆分键的MySQL数据类型)共同定义。 当一张逻辑表的分库拆分方式
sid, asf); 如果数据中包含一些特殊字符,比如分隔符、转义符等,建议用引号扩起来,通过OPTIONALLY ENCLOSED BY '"'指定。 示例: 下面的一段数据中包含了分隔符(,)则需要用引号括起来。 "aab,,,bba,ddd" 如果数据中包含了引号字符,则上述方法
String DDM实例ID。 ddm_dbname 是 String 需要查询的逻辑库名称,不区分大小写。 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务的“获取用户Token”接口来获取。
MySQL连接DDM时出现乱码如何解决 MySQL连接的编码和实际的编码不一致,可能导致DDM解析时出现乱码。 通过“default-character-set=utf8”指定客户端连接的编码即可。 如下所示: mysql -h 127.0.0.1 -P 5066 -D database
WEEKDAY('2019-01-15'); -> 1 上述SQL返回值为1,表示2019-01-15是周二,因为周日为一周中的第一天,所以周二则为一周中的第三天。 算法计算方式 表1 算法举例 条件 算法 举例 无 分表路由结果 = 分表拆分键值 % 分表数 分表拆分键值 :2019-1-15
确认迁移执行结果 操作步骤 待迁移任务结束后,可登录DDM实例查看数据迁移结果。确保DDM实例数据与源数据库数据一致。 图1 查看user_test表数据 图2 查看address_test表数据 执行以下命令查看表数据分布情况。广播表各分片数据一致,拆分表数据会按照拆分算法分布在选取的分片中。
已超过实例设置。对于以上情况如遇到临时表相关报错,可评估SQL是否存在优化空间,如设置广播表、增加分批查询条件或根据分库分表架构自身特点调整SQL写法。如果无优化空间,同时评估数据量大小总体可控(参与实际计算的数据不超过300万行)、实例资源相对充裕,可酌情在控制台调整实例级参数
具体创建步骤请参见:创建自定义策略。 本章为您介绍常用的DDM自定义策略样例。 策略样例 示例:拒绝用户删除DDM实例 拒绝策略需要同时配合其他策略使用,否则没有实际作用。用户被授予的策略中,一个授权项的作用如果同时存在Allow和Deny,则遵循Deny优先。拒绝策略示例如下: {
DATA NODE 命令格式: show data node 描述:查看物理分片的数据。 输出详解: RDS_INSTANCE_ID:RDS的实例ID。 PHYSICAL_NODE:物理节点。 HOST:主机号。 PORT:端口号。 父主题: 实用SQL语句
sequence.nextval(n)场景下并且不支持跨库操作。 currval不支持currval(n)的用法。 操作步骤 连接DDM实例。 连接方法具体请参考连接DDM实例。 连接成功后,打开目标逻辑库。 输入命令创建全局序列。 create sequence seq_test; 输入命令,返回下一个序列值。
计费样例 计费场景 某用户于2023-03-18 16:00:00在华北-北京四成功购买了一个按需计费的DDM实例,规格配置如下: 规格:通用增强型 8核16GB 节点数量:2 公网带宽:6Mbit/s 用了一段时间后,用户发现DDM实例的当前规格无法满足业务需要,于2023-03-20
连接DDM实例。 连接方法具体请参考连接DDM实例。 连接成功后,打开目标逻辑库。 输入如下命令,查看所有序列。 show sequences; 修改自增序列Cache 该功能仅支持内核3.0.3以上的版本。 连接DDM实例。 连接方法具体请参考连接DDM实例。 连接成功后,打开目标逻辑库。
test_seq(col1 bigint,col2 bigint) dbpartition by hash(col1); 操作步骤 连接DDM实例。 连接方法具体请参考连接DDM实例。 打开dml_test_1逻辑库。 use dml_test_1; 输入命令创建全局序列。 create sequence
导入数据到DDM过程中出现主键重复 在DDM中创表时设置自增起始值,并确保起始值大于导入数据自增键的最大值。 父主题: DDM使用类
DDM实例管理 表1 DDM实例管理 权限 对应API接口 授权项 IAM项目(Project) 企业项目 (Enterprise Rroject) 购买DDM 实例(按需) 购买DDM 实例(包周期) POST /v1/{project_id}/instances ddm:instance:create
DDM如何进行分片 如何解决JDBC驱动方式连接DDM异常问题 使用mysqldump从MySQL导出数据非常缓慢的原因 导入数据到DDM过程中出现主键重复 如何处理数据迁移过程中自增列报错:主键重复 如何处理配置参数未超时却报错 如何处理DDM逻辑库与RDS实例的先后关系 DDM逻辑库删除后
查看数据库下指定逻辑表的物理分布情况。 show topology from <table_name> 输出详解: Rds_instance_id:RDS的实例ID。 HOST :IP 。 PORT :端口 。 DATABASE :物理库 。 TABLE :物理表 。 ROW_COUNT :表的数