问题背景:
一、客户环境连续多次出现性能问题,系统登入异常,数据库CPU告警。
处理过程:
1>协助排查数据库性能问题时发现如下两个较频繁的SQL导致严重的性能问题(均使用了视图合并多表数据):
1. SELECT nodename FROM view_name1 WHERE id = xxx;
2. SELECT a.id rid,accounttype,belongto,resourceId,belongtoshow FROM view_name2 a
LEFT JOIN tablename1 b
ON a. col1= b.col1
WHERE a.col1> 0 ;
2> 上面两个SQL使用到了视图(视图通过union all合并了两张表的数据)。下面以t001和t002为例分别给出直接查询原表和使用视图查询的执行计划对比
(其中t001和t002表中id列均有索引):
直接查询原表后对结果进行合并:
3>通过视图进行查询:
create view t_view as
select * from t001
union all
select * from t002
4> 对比执行计划可以发现,使用视图进行数据union all会导致索引失效,使用了全表扫描的方式进行数据检索,在并发高的情况下,
占用较多的磁盘IO,严重消耗数据库的CPU和IO资源,影响到整体的数据库性能,现阶段已发现较多的这种使用视图的代码,应避免使用视图,采用分开查询各表的方式。
MySQL 视图(合并多表数据)引发的严重性能问题
来源:这里教程网
时间:2026-03-01 12:41:13
作者:
编辑推荐:
- MySQL 视图(合并多表数据)引发的严重性能问题03-01
- 3DMAX制作另一种金属曲面渐变的方法03-01
- 3DMAX详细解析真实草地效果图制作教程03-01
- 3DMAX制作简单的框架地球建模教程03-01
- 3Dmax中利用网格平滑和细分制作异形建筑03-01
- 优化器成本记录表|全方位认识 mysql 系统库03-01
- mysql sysben0.5安装与测试03-01
- MYSQL数据库表记录删除解决方案03-01
下一篇:
相关推荐
-
雷神推出 MIX PRO II 迷你主机:基于 Ultra 200H,玻璃上盖 + ARGB 灯效
2 月 9 日消息,雷神 (THUNDEROBOT) 现已宣布推出基于英
-
制造商 Musnap 推出彩色墨水屏电纸书 Ocean C:支持手写笔、第三方安卓应用
2 月 10 日消息,制造商 Musnap 现已在海外推出一款 Oce
热文推荐
- MySQL 视图(合并多表数据)引发的严重性能问题
MySQL 视图(合并多表数据)引发的严重性能问题
26-03-01 - 3DMAX制作另一种金属曲面渐变的方法
3DMAX制作另一种金属曲面渐变的方法
26-03-01 - 3DMAX详细解析真实草地效果图制作教程
3DMAX详细解析真实草地效果图制作教程
26-03-01 - 3DMAX制作简单的框架地球建模教程
3DMAX制作简单的框架地球建模教程
26-03-01 - 3Dmax中利用网格平滑和细分制作异形建筑
3Dmax中利用网格平滑和细分制作异形建筑
26-03-01 - 《MySQL主从不一致情形与解决方法》
《MySQL主从不一致情形与解决方法》
26-03-01 - 思维导图软件哪个好,英语思维导图怎么画
思维导图软件哪个好,英语思维导图怎么画
26-03-01 - 随笔:MySQL:双主情况下跳过Event的方式
随笔:MySQL:双主情况下跳过Event的方式
26-03-01 - Navicat安装配置
Navicat安装配置
26-03-01 - VIVO什么时候上架了U3x?AI三摄+5000mAh+18W闪充,只要799
