SQL调优优化

场景:

1、销售表中有大约2000w数据量 有五张分析销售的看板 直接就打不开 

2、MYSQL版本是5.7 SQL没有特别复杂的 基本都是冗余字段很少left join right join 连接另外的表

3、目前表中对常用字段(代理区域、省份、门店)创建组合索引 

4、系统是linux

5、以上场景、以上措施 百行SQL拿到navicat中查询数据基本都是300-500s,报表更是直接打不开 有什么更好地方式吗 

可以针对系统磁盘控件、索引优化、SQL优化、MYSQL升级、数据仓库 但是得考虑数据权限的问题

FineReport 南巷尕杰 发布于 2023-1-11 16:06
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
0
snrtuemcLv8专家互助
发布于2023-1-11 16:10

这个没好方法,建议直接定时抽取结果写到中间库,或者redis中

然后帆软从中间库或者redis取

不然你sql运行都5-10分钟了,页面可定没这么长等待时间,用户体验也没有

最佳回答
0
LTC朝Lv6高级互助
发布于2023-1-11 16:09(编辑于 2023-1-12 15:08)

mysql explain: https://blog.csdn.net/asd051377305/article/details/113979657

根据对sql执行效率的结果,进行相对应的优化

最佳回答
0
runnerLv7资深互助
发布于2023-1-11 16:12

中间表或者加索引试试;我这边1000w还行

最佳回答
0
指间沙Lv6中级互助
发布于2023-1-12 12:14

分成两个,1、建议是对数据处理到别的库,然后直接取单表。2、在考虑数据权限问题,无非就是通过哪些字段过滤

  • 3关注人数
  • 443浏览人数
  • 最后回答于:2023-1-12 15:08
    请选择关闭问题的原因
    确定 取消
    返回顶部