检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
如果执行全表扫描的SQL语句,建议执行频率不要过高,或者选择在业务低峰期执行,否则可能会出现“后端RDS连接数可能不够用”报错。 广播表的插入操作,会在每个分片的表中进行插入。如果此表数据量太大(超过100万条数据),不建议使用广播表,以免占用太多数据空间,可以使用拆分表。
操作步骤 待迁移任务结束后,可登录DDM实例查看数据迁移结果。确保DDM实例数据与源数据库数据一致。 图1 查看user_test表数据 图2 查看address_test表数据 执行以下命令查看表数据分布情况。广播表各分片数据一致,拆分表数据会按照拆分算法分布在选取的分片中。 show
单击左侧的服务列表图标,选择“数据库 > 分布式数据库中间件 DDM”,进入DDM管理控制台。 在实例管理页面,单击实例对应操作栏的“登录”按钮。 在实例登录窗口输入创建DDM账号中创建的DDM账号和密码,进入数据管理服务进行建表操作。 建表操作是将源RDS for MySQL数据库中的表在DD
因为DDM中的表一般都做了分库分表,使得这些表中的数据可能分布在很多个RDS实例上的不同数据库分片内。在DDM中一个事务中对各个逻辑表的增删改查很有可能实际发生在多个RDS实例上的不同数据库分片上,每个RDS实例上同一数据库分片内所发生的对分片内数据表的一系列操作相当于一个本地事务,这样D
表数据重载 DDM跨region容灾场景下,通过数据复制服务(DRS)进行存储层数据迁移,迁移完成之后,目标DDM无法感知逻辑表信息所在位置,所以需要在目标DDM主动下发“表数据重载”,重新加载信息,跟分片建立联系。 操作步骤 登录分布式数据库中间件控制台。 在“实例管理”页面,选择目标实例。
登录华为云控制台。 单击管理控制台左上角的,选择区域“华北-北京四”。 单击左侧的服务列表图标,选择“数据库 > 分布式数据库中间件 DDM”,进入DDM管理控制台。 在实例管理页面,单击页面右上方的“购买数据库中间件实例”。 按需设置实例相关信息和规格。参数说明请参考实例购买。 实例信息设置完成后,单击页面下方“立即购买”。
常用概念 数据节点 数据节点是分布式数据库中间件服务的最小管理单元,表示DDM关联的RDS for MySQL实例,DDM目前仅支持这种引擎,一个实例代表了一个独立运行的数据库。您可以在一个DDM实例中通过创建多个逻辑库管理多个数据节点,并且可以独立访问数据节点。 DDM实例自身
功能总览 分布式数据库中间件(Distributed Database Middleware,简称DDM),是一款分布式关系型数据库中间件。兼容MySQL协议,专注于解决数据库分布式扩展问题,突破传统数据库的容量和性能瓶颈,实现海量数据高并发访问。 DDM支持的功能如表1所示。 表1
RDS_ADDRESS为待导入数据的RDS的地址。 RDS_PORT为RDS实例的端口。 RDS_USER为RDS实例的用户名。 DB_NAME为RDS数据库名称,如果导入的是单表,DB_NAME为RDS第一个分片的物理数据库。 mysql_table_schema.sql为待导入的表结构文件名。 mysq_table_data
DDM是否支持数据类型强制转换 数据类型转换属于高级用法,DDM对SQL的兼容性会逐步完善,如有需要请提工单处理。 父主题: SQL语法类
RDS相关类 数据库表名是否区分大小写 RDS for MySQL哪些高危操作会影响DDM 如何处理表中存在主键重复的数据 如何通过show full innodb status指令查询RDS for MySQL相关信息 如何选择数据节点RDS for MySQL的规格
设置读权重 主要用于调整主实例和只读实例的读写权重。对于拥有较多数据节点的DDM实例来说,可以批量配置数据节点读权重。 使用须知 如果数据节点未挂载只读实例,该主实例无法设置权重。 批量设置读权重 登录分布式数据库中间件控制台。 在实例管理列表页面,选择目标实例。 单击实例名称,进入基本信息页面。
回滚,导致数据不一致。 XA分布式事务:两阶段提交,跨分片事务commit时部分失败会自动回滚,保证事务内数据一致性。 数据导入导出 支持外部数据导入,帮助用户实现数据库平滑上云。支持DDM实例数据按业务需求导出。 具体操作请参见数据迁移。 SQL语法 兼容MySQL 5.7和8
本章节主要针对跨分片复杂SQL时的调优操作。 Group by和Order by SQL调优建议 当group by 字段不是表中现有的数据列时,可以使用generated column机制(MySQL5.7版本以上支持,5.6及之前版本可新建普通字段和添加索引),创建新列并添加索引,将新创建字段作为group
迁移源/目标 信息项 源RDS实例 RDS实例连接地址 RDS实例侦听端口 数据库用户 数据库名称 数据库表名 目标DDM实例 DDM实例连接地址 DDM实例侦听端口 DDM实例用户名 DDM关联RDS实例上创建的数据库名称 新建RDS实例连接地址 新建RDS实例侦听端口 RDS实例用户名 数据库名称
云容器引擎-成长地图 | 华为云 分布式数据库中间件 分布式数据库中间件(Distributed Database Middleware,简称DDM),解决单机关系型数据库对硬件依赖性强、数据量增大后扩容困难、数据库响应变慢等难题。突破了传统数据库的容量和性能瓶颈,实现海量数据高并发访问。 云图说 立即使用
证分片变更后数据一致性。 如果表不存在主键,请使用alter语句增加主键。 数据库实例链接检查 DN节点是否可连接。 检查安全组等配置。 数据库实例参数检查 源DN节点和目标DN节点数据库关键参数配置需要相同。 请进入DN console对参数配置进行修改。 数据库实例磁盘空间检查
DDL主要功能为在对应DDL上,提供ALGORITHM、LOCK显示声明的支持,并提供透传至后端数据库节点能力(此功能需满足DDM内核版本大于等于3.1.0版本)。 当DDM实例关联的DN实例为MySQL5.7版本时,Online DDL操作支持以下语法: ALTER TABLE tbl_name
adata数据进行备份,备份保留时长30天。删除逻辑库、逻辑库分片变更后清理数据、删除实例等影响Metadata的重要操作也会触发元数据备份。 元数据恢复特性用于误删库或者RDS for MySQL本身出现异常等业务场景,可根据过去的某个时间点,将Metadata数据与已经PITR恢复完成的RDS
MySQL实例进行分片平移,会禁写,如果分片数有变化,则会禁写禁读。 为了确保数据一致性,切换过程中DDM服务会进行数据完整性校验,导致切换时间变长,具体时间由数据量大小决定,建议在业务低峰期操作。 分片变更结束后数据将会重新分布,确认完数据无误后可单击“清理”来清除原RDS for