首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
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
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
03-22 11:42
拼多多集团-PDD_前端
二面开始,其实就不太问八股了
我看过一些面试反馈,有一个比较典型的现象:👉 有些人一面没问题,但到了二面,很快就被问住了而且往往不是不会,而是:👉 讲不深、讲不透、讲不下去二面和一面最大的区别在于:👉 不再考“你知道什么”,而是在看:👉 你做过的东西,能不能经得起推敲1️⃣ 项目不再是“讲”,而是“被拆”很多人准备项目的方式是:我做了什么用了什么技术达到了什么效果这些在一面是够用的。但二面通常会直接往下问:👉 细节比如:这个优化你为什么会想到?当时有没有其他方案?为什么不用?如果场景变化,这个方案还成立吗?有没有什么可以继续优化的地方?这类问题的核心不是难,而是:👉 你有没有真正思考过你做的东西很多人卡在这里的...
简历中的项目经历要怎么写
点赞
评论
收藏
分享
03-19 15:28
杭州电子科技大学 Web前端
腾讯前端一面,没想到问这些
双非一本,前端,27届找暑期实习。腾讯一面刚完,写个记录。 说实话投了没抱太大希望,结果真的约到了,还挺意外的。 面试大概50分钟: CSS/HTML:BFC是什么,应用场景列几个;flex布局常见属性,如果子元素宽度超出怎么处理。 JS基础:闭包、原型链(老三样,不意外);手写Promise.all,要求处理reject情况。 框架:Vue响应式原理,Proxy和Object.defineProperty区别,追问了Proxy的局限性;React和Vue的diff算法差异。 算法:二叉树层序遍历,然后追问:每层从右往左输出怎么改。 工程化:Webpack和Vite的区别,为什么Vite在开发...
doro也想进大厂:
今天一面都没问我八股和手写,就问了十几分钟项目,说我项目比较简单,是不是挂了
查看13道真题和解析
点赞
评论
收藏
分享
03-08 18:11
门头沟学院 Java
26届Java简历求评价
目前只能约到小公司,求大神指导
Java抽象小篮子:
海投就完事了,简历没什么问题,最大问题是学历
点赞
评论
收藏
分享
03-14 10:16
天猫技术_服务端开发
似乎今年大厂开始的比较晚
字节 腾讯三月初就开始了,阿里3.18才开启,但是已经开始造势了,阿里巴巴开始的这么晚,难道是刚盘点完hc?据说今年招聘大方向也是AI,同学们加把劲吧
肖先生~:
感觉现在AI充斥着互联网
你感受到金三银四了嘛?
点赞
评论
收藏
分享
03-21 22:36
东南大学 Java
顺丰java一面
不仅记错了时间迟到了一会儿还回答的很差,铁凉凉了HashMap 何时扩容?String为什么设计为不可变类型?如何创建线程池的?为什么要用线程池?单核cpu多线程是否有用?MyBaits一、二级缓存是什么?怎么优化数据库查询?用过索引吗?主键索引和普通索引什么区别?单线程Redis为什么那么快?项目中哪里用了Redis?数据库和Redis如何保证一致性?讲讲事务传播机制项目相关提问
查看13道真题和解析
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
产品岗集合,我发现了一个顶级项目
6029
2
...
腾讯视频后台一面凉经
5610
3
...
🔥牛客春招季🔥各公司春招&实习最新进展,这里实时更新!
5043
4
...
携程 后端开发实习
4476
5
...
蚂蚁国际暑期一面
3793
6
...
大疆起诉影石,硬件大佬开战?
3399
7
...
教你如何快速包装简历(Agent相关)
3106
8
...
蚂蚁集团-AI Coding笔试
2606
9
...
滴滴二面,我败在了设计感
2190
10
...
3-23 腾讯面经 QQ部门(一面挂)
1989
创作者周榜
更多
正在热议
更多
#
春招至今,你的战绩如何?
#
11293次浏览
95人参与
#
你的实习产出是真实的还是包装的?
#
2011次浏览
42人参与
#
MiniMax求职进展汇总
#
24165次浏览
310人参与
#
军工所铁饭碗 vs 互联网高薪资,你会选谁
#
7679次浏览
43人参与
#
简历第一个项目做什么
#
31774次浏览
342人参与
#
重来一次,我还会选择这个专业吗
#
433613次浏览
3926人参与
#
米连集团26产品管培生项目
#
6074次浏览
216人参与
#
当下环境,你会继续卷互联网,还是看其他行业机会
#
187249次浏览
1122人参与
#
牛客AI文生图
#
21454次浏览
238人参与
#
不考虑薪资和职业,你最想做什么工作呢?
#
152495次浏览
888人参与
#
研究所笔面经互助
#
118980次浏览
577人参与
#
简历中的项目经历要怎么写?
#
310431次浏览
4221人参与
#
AI时代,哪些岗位最容易被淘汰
#
63945次浏览
831人参与
#
面试紧张时你会有什么表现?
#
30525次浏览
188人参与
#
你今年的平均薪资是多少?
#
213173次浏览
1039人参与
#
你怎么看待AI面试
#
180221次浏览
1259人参与
#
高学历就一定能找到好工作吗?
#
64344次浏览
620人参与
#
你最满意的offer薪资是哪家公司?
#
76592次浏览
374人参与
#
我的求职精神状态
#
448199次浏览
3129人参与
#
正在春招的你,也参与了去年秋招吗?
#
363579次浏览
2638人参与
#
腾讯音乐求职进展汇总
#
160697次浏览
1112人参与
#
校招笔试
#
471378次浏览
2964人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务