首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
神让我捡漏
门头沟学院 测试开发
发布于广东
关注
已关注
取消关注
m
@Java抽象带篮子_转大模型应用开发版:
Mysql调优攻略大全(建议收藏)
0.前言 建议与我的八股专栏的jvm八股配合使用。觉得本贴有用的收藏点个赞评论下送朵花什么的吧。下面我会让你看看什么是传说中的mysql调优(八股面试吹b版)。 打个小广告 我的架构设计专栏:https://www.nowcoder.com/creation/manager/columnDetail/0ybvLm 我的八股专栏:https://www.nowcoder.com/creation/manager/columnDetail/j8ZZk0 内有详细苍穹外卖话术哦! 为什么我要开个八股专栏? 一方面有感于现在面试找工作对八股的要求之高,一方面有感于市面上的一些八股资料又乱又复杂难懂,所以我决定自己结合各种市面上优秀的博客、gpt,牛客上的面经和我自己的理解,整合出一份八股资料,我的目标是:让八股文成为真正简单易懂的八股,知识点丰富且浅显易懂,不追求过分的深入,但一定重点层次分明(如果想深入了解知识点的话还是建议自己认真看看javaguide和小林coding,但其实我就是看了他们的全部博客取精华精炼部分融入我的专栏。。。),一句话就是我的八股专栏主打一个面试速成,一点超纲的知识点都不会有,因为我自己也用这份笔记准备秋招。。。 1.怎么定位慢查询? 2种方法·: 运维监控工具Slywalking 我们当时做压测的时候有的接口非常的慢,接口的响应时间超过了2秒以上,因为我们当时的系统部署了运维的监控系统Skywalking ,在展示的报表中可以看到是哪一个接口比较慢,并且可以分析这个接口哪部分比较慢,这里可以看到SQL的具体的执行时间,所以可以定位是哪个sql出了问题 mysql慢查询日志 2.怎么分析慢sql? 通过EXPLAIN分析SQL执行计划 ALL:表示全表扫描,需要遍历全表来找到对应的行。 possible_keys:可能使用到的索引。 key:实际使用到的索引。 key_len:当前使用的索引的长度。 ref:关联id等信息。 rows:查找到记录所扫描的行数。 filtered:查找到所需记录占总扫描记录数的比例。 Extra:额外的信息。 通过Show Profile分析SQL执行性能 上述通过 EXPLAIN 分析执行计划,仅仅是停留在分析SQL的外部的执行情况,如果我们想要深入到MySQL内核中,从执行线程的状态和时间来分析的话,这个时候我们就可以选择Profile。 Profile除了可以分析执行线程的状态和时间,还支持进一步选择ALL、CPU、MEMORY、BLOCK IO、CONTEXT SWITCHES等类型来查询SQL语句在不同系统资源上所消耗的时间。以下是相关命令的注释: SHOW PROFILE [type [, type] ... ][FOR QUERY n][LIMIT row_count [OFFSET offset]]type参数:| ALL:显示所有开销信息| BLOCK IO:阻塞的输入输出次数| CONTEXT SWITCHES:上下文切换相关开销信息| CPU:显示CPU的相关开销信息 | IPC:接收和发送消息的相关开销信息| MEMORY :显示内存相关的开销,目前无用| PAGE FAULTS :显示页面错误相关开销信息| SOURCE :列出相应操作对应的函数名及其在源码中的调用位置(行数) | SWAPS:显示swap交换次数的相关开销信息 Show Profiles只显示最近发给服务器的SQL语句,默认情况下是记录最近已执行的15条记录,我们可以重新设置profiling_history_size增大该存储记录,最大值为100。 获取到Query_ID之后,我们再通过Show Profile for Query ID语句,就能够查看到对应Query_ID的SQL语句在执行过程中线程的每个状态所消耗的时间了: 通过以上分析可知:SELECT COUNT(*) FROM order; SQL语句在Sending data状态所消耗的时间最长,这是因为在该状态下,MySQL线程开始读取数据并返回到客户端,此时有大量磁盘I/O操作。 3.怎么用explain分析sql执行计划 我们可以使用 EXPLAIN 命令来分析 SQL 的 执行计划 。 1.什么是执行计划 执行计划 是指一条 SQL 语句在经过 MySQL 查询优化器 的优化会后,具体的执行方式。 通过 EXPLAIN 的结果,可以了解到如数据表的查询顺序、数据查询操作的操作类型、哪些索引可以被命中、哪些索引实际会命中、每个数据表有多少行记录被查询等信息。 2.执行计划常用字段 MySQL 为我们提供了 EXPLAIN 命令,来获取执行计划的相关信息。 需要注意的是,EXPLAIN 语句并不会真的去执行相关的语句,而是通过查询优化器对语句进行分析,找出最优的查询方案,并显示对应的信息。 执行计划有12个字段组成,常用的有: 1.type表示查询表连接类型**,查看索引执行情况的一个重要指标。以下性能从好到坏依次:system > const > eq_ref > ref > ref_or_null > index_merge > unique_subquery > index_subquery > range > index > ALL system:这种类型要求数据库表中只有一条数据,是const类型的一个特例,一般情况下是不会出现的。 const:通过一次索引就能找到数据,一般用于主键或唯一索引作为条件,这类扫描效率极高,,速度非常快。基于主键或唯一索引唯一值查询,最多返回一条结果,比eq_ref略好。 eq_ref:常用于主键或唯一索引扫描,一般指使用主键的关联查询 ref : 常用于非主键和唯一索引扫描。 ref_or_null:这种连接类型类似于ref,区别在于MySQL会额外搜索包含NULL值的行 index_merge:使用了索引合并优化方法,查询使用了两个以上的索引。 unique_subquery:类似于eq_ref,条件用了in子查询 index_subquery:区别于unique_subquery,用于非唯一索引,可以返回重复值。 r
点赞 13
评论 3
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
今天 17:05
河北师范大学 算法工程师
MetaApp Android开发实习生 一面凉经
📍面试公司:MetaApp🕐面试时间:2/12💻面试岗位:Android开发实习生❓面试问题:基础信息与求职规划类请进行简单的自我介绍(包括院校、年级、实习规划、技术栈、项目经历等)。你同时具备安卓端和后端经验,是否两个方向都在面试?安卓核心技术类你在简历中写了Compose相关技能,对传统XML布局的熟悉程度如何?请介绍安卓四大组件分别是什么,并说明各自的适用场景。请结合具体场景,介绍Activity的生命周期,包括对应的英文方法名。你知道安卓中有哪些持久化数据的方案?请介绍你使用过的方案及其各自的适用场景。编程语言与协程类你同时用过Java和Kotlin,认为Kotlin相比于Jav...
查看18道真题和解析
点赞
评论
收藏
分享
昨天 18:13
科大讯飞_教育BG_后端开发(准入职员工)
有了简历就开始投递春招
随着陆续一些企业开始开放的了春招的岗位,可能会觉得春招已经开始了,但是目前来看,我认为最重要的是要尽早写好简历,完善简历。秋招后又刷了一份实习的,应该要将实习经历更新上来,或者是又做了新项目的。春招在三月份就要陆续开始,所以我认为在二月份开始投递简历是最好。春招和秋招的原则是一样的,要多投递多,多面试,争取早日上岸。#春招什么时候投?#
点赞
评论
收藏
分享
01-16 11:50
浙江工商大学 Java
26年实习现状
大家自己看
joecii:
如果没有工资,那可能没有工资是这家公司最小的问题了
找实习记录
点赞
评论
收藏
分享
02-10 18:19
华为_HR
OD面经-JS前端
基本情况:双非一本,6年前端经验,因前公司组织架构调整,项目组优化,gap半年以上,期间在备考公务员,感觉上岸比较困难,加上对od平台一直比较感兴趣,从HR鱼丸这里了解到有新的院校清单,并且自己在清单内,所以决定一试。机考:复习了两周多参加了机考,难度是有的,但是及格线还是比较轻松的,第一题考的是数组和字符串,比较经典;第二题考的是队列;最后一题是贪心。感觉和复习的力扣题目相比,考题会更加场景化,理解题意很重要。估分时就知道是低分飘过,HR鱼丸查询报告无误后告知可以继续推进。综测:鱼丸说了下大致的注意事项,我是在安静的环境、情绪稳定的时候做的,大概半小时以内搞定了,提交之后反馈给HR,很快就通...
查看12道真题和解析
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
聊聊Agent实习
8611
2
...
明天回家过年!
2884
3
...
有实习后,面试备战核心指南(精准避坑+高效提分)
1566
4
...
携程前端一面(无八股)
1525
5
...
按耐不住了
1302
6
...
京东后端-一面
1277
7
...
我勒个乖乖,影石年会送房子和保时捷!😍
1253
8
...
A厂 Agent开发 一面面经题目整理
1089
9
...
选微信还是字节?急急急!
1007
10
...
学校不让去实习怎么办,我真的好想哭
963
创作者周榜
更多
正在热议
更多
#
春招什么时候投?
#
7110次浏览
113人参与
#
牛友的春节生活
#
3701次浏览
102人参与
#
春节前,你还在投简历吗?
#
9841次浏览
131人参与
#
从夯到拉,锐评职场mentor
#
2598次浏览
51人参与
#
牛客AI体验站
#
13989次浏览
260人参与
#
实习到现在,你最困惑的一个问题
#
2814次浏览
88人参与
#
春节提前走,你用什么理由请假?
#
6382次浏览
163人参与
#
备战春招/暑实,现在应该做什么?
#
2544次浏览
94人参与
#
距离春招还有一个月,你现在是什么开局?
#
4095次浏览
91人参与
#
聊聊Agent开发
#
18836次浏览
494人参与
#
暑期实习什么时候投?
#
4844次浏览
125人参与
#
推荐一个值得做的AI项目
#
5096次浏览
151人参与
#
听劝,这个简历怎么改
#
380624次浏览
1826人参与
#
机械人的秋招小目标
#
28335次浏览
239人参与
#
我的AI电子员工
#
27598次浏览
185人参与
#
腾讯工作体验
#
568073次浏览
3712人参与
#
参加完秋招的机械人,还参加春招吗?
#
108209次浏览
704人参与
#
实习的内耗时刻
#
221474次浏览
1643人参与
#
互联网公司评价
#
488399次浏览
4119人参与
#
bilibili求职进展汇总
#
180871次浏览
1074人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务