检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
自定义HINT读写分离 自定义HINT跳过执行计划缓存 通过HINT指定分片直接执行SQL 父主题: SQL语法
如何进行SQL优化 尽量避免使用LEFT JOIN或RIGHT JOIN,建议使用INNER。 在使用LEFT或RIGHT JOIN时,ON会优先执行,WHERE条件在最后执行,所以在使用过程中,条件尽可能在ON语句中判断,减少WHERE的执行。 尽量少用子查询,改用JOIN,避免大表全表扫描。
SQL高级功能 暂不支持Prepare\EXECUTE语法。 暂不支持用户自定义数据类型、自定义函数。 暂不支持视图、存储过程、触发器、游标。 暂不支持BEGIN…END、LOOP…END LOOP、REPEAT…UNTIL…END REPEAT、WHILE…DO…END WHILE等复合语句。
在逻辑库列表页面,单击右侧操作栏的“配置SQL黑名单”。 图1 配置SQL黑名单 在配置SQL黑名单弹窗中,单击“编辑”,按需输入前缀匹配、全量匹配、正则匹配的SQL信息,设置完成后单击“确定”即可。 前缀匹配:禁止在对应逻辑库执行带有某些关键字的SQL语句,例如带有DROP或者DELETE的SQL语句。 全
13以上版本的驱动,才能实现批量插入。MySQL JDBC驱动在默认情况下会无视executeBatch()语句,把预计批量执行的一组sql语句拆散,一条一条地发给MySQL数据库,批量插入实际上是单条插入,直接造成较低的性能。只有把rewriteBatchedStatements参数置为true
SQL语法 简介 DDL DML Online DDL 函数 使用限制 实用SQL语句 全局序列 数据库管理语法 SQL高级功能
使用mysqldump从MySQL导出数据非常缓慢的原因 mysqldump客户端的版本和DDM所支持的MySQL版本不一致,可能会导致从MySQL导出数据非常缓慢。 建议版本保持一致。 父主题: DDM使用类
SET指定文件的编码,建议跟RDS for MySQL实例上物理库(分片)的编码一致,否则可能乱码。其中字符集编码必须用引号扩起来,否则会解析出错。 通过IGNORE或者REPLACE指定遇到重复记录是替换还是忽略。 目前列名必须指定,且必须包括分片字段,否则没办法确定路由。 其他参数参考MySQL的load data
RDS for MySQL准备 此操作默认新的RDS for MySQL实例已创建成功。如需创建实例,请参考购买RDS for MySQL实例。 父主题: 通过DDM对RDS for MySQL实例进行分库分表
创建RDS for MySQL实例 本章节介绍创建RDS for MySQL实例并构造测试数据。 创建实例 登录华为云控制台。 单击管理控制台左上角的,选择区域“华南-广州”。 单击左侧的服务列表图标,选择“数据库 > 云数据库 RDS”。 单击“购买数据库实例”。 配置实例名称和实例基本信息。
创建RDS for MySQL实例 本章节介绍创建DDM下关联的RDS for MySQL实例,创建步骤如下。 创建步骤 登录华为云控制台。 单击管理控制台左上角的,选择区域“华北-北京四”。 单击左侧的服务列表图标,选择“数据库 > 云数据库 RDS”。 单击“购买数据库实例”。
通过HINT指定分片直接执行SQL DDM提供HINT在一个或多个分片上执行SQL语句。 HINT支持以下两种格式: 一个分片上执行SQL:/*+db=<physical_db_name>*/ <your query>; 多个分片上执行SQL:/*+db={<physical_db_name1>
变更评估 分片变更前,可根据以下几点对分片变更做一个初步的评估,根据评估结果选择适当的新分片数, DDM实例规格和DN实例规格, 以及DN节点个数。 数据量:可用show db status命令来获得目前现网的数据量。 DDM规格:当前DDM实例的CPU个数、内存大小、DDM节点数。
源端RDS for MySQL准备 创建源端VPC和安全组 创建RDS for MySQL实例 创建源端VPN 父主题: 通过数据复制服务(DRS)将RDS for MySQL数据迁移到DDM
HINT-DB 命令格式: /*+db=<physical_db_name>*/ TRUNCATE TABLE <table_name> 描述: 删除对应的<physical_db_name>物理库下对应的所有的<table_name>的分表数据,其余分库的表不受影响。 父主题:
如何选择DDM逻辑库分片数 逻辑库选择“非拆分”模式时,一个逻辑库仅对应一个MySQL实例,在该实例上仅创建1个分片。 逻辑库选择“拆分”模式时,一个逻辑库可对应多个MySQL实例,在每个实例上,可创建1-64个分片。如果因业务需要分片数超过64,请联系DDM技术人员。 分片平移
SQL语法类 DDM是否支持分布式JOIN 如何进行SQL优化 DDM是否支持数据类型强制转换 如何处理INSERT语句批量插入多条数据时报错
TABLE :物理表 。 ROW_COUNT :表的数据量(大致的值,在information_schema.TABLES取值)。 父主题: 实用SQL语句
查询字段列表中,这样能提升SELECT查询效率。 对于UNION中的每个SELECT, DDM 暂不支持使用多个同名的列。 例如: 如下SQL的SELECT中存在重复的列名。 SELECT id, id, name FROM t1 UNION SELECT pk, pk, name
CHECK TABLE 检查当前逻辑库下所有逻辑表各分表的DDL一致性 检查某一张逻辑表各分表的DDL一致性 父主题: 实用SQL语句