检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
queries获取TPCH 22个查询query语句,并进行相应操作。 测试结果 通过采用16线程并行查询,其中的17条QUERY的性能得到明显提升,查询速度平均提升10倍以上。TPCH性能测试结果如下图所示。 图1 测试结果 父主题: 并行查询(PQ)
min以上,而单独执行存储过程中的SQL语句却很快。 原因分析 存储过程和相关表、库的字符集不一致,导致查询结果存在大量字符转换,从而执行缓慢。 排查过程: 使用如下命令查看存储过程和相关表的定义,观察存储过程和表的字符集是否一致。 SHOW CREATE PROCEDURE xxx;
确认迁移结果 确认迁移结果可参考如下两种方式: DRS会针对迁移对象、用户、数据等维度进行对比,从而给出迁移结果,详情参见在DRS管理控制台查看迁移结果。 直接登录数据库查看库、表、数据是否迁移完成。手工确认数据迁移情况,详情参见在GaussDB(for MySQL)管理控制台查看迁移结果。
功能介绍 GaussDB(for MySQL)支持IN谓词转子查询功能。对于满足如下条件的复杂查询,通过该功能优化器可以将某些大的IN谓词转换为IN子查询,从而提升复杂查询的执行性能。 GaussDB(for MySQL)内核版本为2.0.42.230600或以上的版本。 IN列
MySQL)SQL使用规范 数据库SQL查询规范 当使用ORDER BY .. LIMIT查询时,优先考虑通过索引优化查询语句,提高执行效率。 使用ORDER BY、GROUP BY、DISTINCT执行查询时,where条件过滤出来的结果集请保持在1000行以内,否则会降低查询效率。 使用ORDER
确认数据迁移结果 确认升级迁移结果有两种方式: 方式一:(自动)在DRS管理控制台查看迁移结果。DRS会针对迁移对象、用户、数据等维度进行对比,从而给出迁移结果。 方式二:(手工)在GaussDB(for MySQL)管理控制台查看迁移结果。直接登录数据库查看库、表、数据是否迁移完成。手工确认数据迁移情况。
0需要扫描表连接后的结果,当表连接数量多或基表数据量大时,需要扫描的数据量很大,导致执行效率很低。 为了提升DISTINCT,尤其多表连接下DISTINCT的查询效率,GaussDB(for MySQL)在执行优化器中加入了剪枝功能,可以去除不必要的扫描分支,提升查询性能。 适用场景
nt(*)结果,并在最后阶段将所有中间结果进行聚合得到最终结果。具体如下: 图1 并行查询原理图 应用场景 并行查询适用于大部分SELECT语句,例如大表查询、多表连接查询、计算量较大的查询。对于非常短的查询,效果不太显著。 轻分析类业务 报表查询通常SQL复杂而且比较耗费时间,通过并行查询可以加速单次查询效率。
串等), 导致最终结果与串行结果有差别。 结果集顺序差别 因为是多个工作线程执行查询,返回的结果集可能与非并行执行顺序不一致。在具有LIMIT查询的情况下,更容易出现与串行结果顺序不同的现象。对于不可见字符,当MySQL判断多个不可见字符相等时,可能会出现结果集顺序不同,或者group
hint,该单条SQL也不会并行执行。 查看并行执行的状态 通过如下SQL,查看并行执行的当前状态,显示结果请见图1。 show status like "%PQ%" 图1 状态显示 通过EXPLAIN展示查询语句的并行执行计划,显示结果请见图2。 图2 并行执行计划结果展示 与传统的执行计划相
当前时区转换成UTC时间(世界标准时间)存储,查询时,又将其从UTC时间转化为当前时区时间返回 timestamp类型字段的时间范围:'1970-01-01 00:00:01' UTC -- '2038-01-19 03:14:07' UTC,详见官方文档: 使用如下命令,查看当前的时区:
查询数据库规格 功能介绍 获取指定数据库引擎版本对应的规格信息。 该接口计划于2025-03-31下线,建议及时切换到新接口查询数据库规格。 调试 您可以在API Explorer中调试该接口。 URI GET /mysql/v3/{project_id}/flavors/{database_name}
--threads=200 prepare 查询带1万个IN。 select count(*) from sbtest1 where id/k in (... ...); 性能对比如下表所示: 表1 性能数据 测试方法 开启转换 关闭转换(不适用range_opt) 性能对比 带索引
查询数据库引擎的版本 功能介绍 获取指定数据库引擎对应的数据库版本信息。 该接口计划于2025-03-31下线,建议及时切换到新接口查询数据库引擎的版本。 调试 您可以在API Explorer中调试该接口。 URI GET /mysql/v3/{project_id}/data
安装MySQL客户端,然后执行MySQL命令行通过读写内网地址连接到实例。 步骤1:购买ECS 步骤2:查询需要连接的实例的内网IP地址 步骤3:测试连通性并安装MySQL客户端 步骤4:使用命令行连接实例 购买ECS 登录管理控制台,查看是否有弹性云服务器。 有Linux弹性云服务器,执行3。
索引位置,偏移量。从第一条数据偏移offset条数据后开始查询,默认为0(偏移0条数据,表示从第一条数据开始查询),必须为数字,不能为负数 limit 否 Integer 查询记录数。默认为100,不能为负数,最小值为1,最大值为100 type 否 String 语句类型,取空值,表示查询所有语句类型,也可指定如
索引位置,偏移量。从第一条数据偏移offset条数据后开始查询,默认为0(偏移0条数据,表示从第一条数据开始查询),必须为数字,不能为负数 limit 否 Integer 查询记录数。默认为100,不能为负数,最小值为1,最大值为100。 type 否 String 语句类型,取空值,表示查询所有语句类型,也可指定如下日志类型:
句的IN列表中的元素个数超过该参数的取值时,则SQL语句进行转换,将IN谓词转换为子查询。 示例: 原查询: mysql> explain select * from t where a in (1,2,3,4,5); +----+-------------+-------+--
COLUMNS} [TERMINATED BY 'string'] [[OPTIONALLY] ENCLOSED BY 'char'] ] [LINES [TERMINATED BY 'string'] ]
索引长度限制导致修改varchar长度失败 delete大表数据后,再查询同一张表时出现慢SQL 更新emoji表情数据报错Error 1366 存储过程和相关表字符集不一致导致执行缓慢 报错ERROR [1412]的解决方法 存在外键的表无法删除 GROUP_CONCAT结果不符合预期 创建二级索引报错Too many