SQL优化技巧(MySQL)

embedded/2024/10/18 18:28:00/

一、开启慢查询日志

1、开启慢查询日志:

sql">mysql> set global slow_query_log=on;
Query OK, 0 rows affected (0.00 sec)

默认是off(关闭),修改成on(打开)。

2、查看日志文件存放路径:

sql">show variables like 'slow_query_log_file';

默认存放在:/home/mysql/log/mysql/slow_query.log。

3、查看慢SQL的记录时间:

sql">show variables like 'long_query_time';

系统默认时间为10,单位是秒,我们可以自己设置这个值,使用小数表示,可以精确到微秒。

4、设置慢SQL的记录时间:

sql">set global long_query_time = 3;

二、使用mysql自带的explain分析SQL语句(DESC)

sql">explain select * from tb_user;

查询的结果是对当前SQL语句的分析结果,我们需要关注的字段有:

type: 查询索引的类型,是否拥有优化的空间,是否是全索引扫描,或者全表扫描

type类型主要有以下类型,效率从左向右依次降低:

        null(不涉及表)、system(系统表)、const(主键)、eq_ref(主键索引或者唯一索引)、ref(使用索引)、range(范围)、index、all(全表)

possible_keys:查看sql中可能存在的索引

key、key_len:检查是否命中索引

Extra:判断SQL中是否出现回表的情况,出现了可以尝试添加索引或者修改返回字段来修复


http://www.ppmy.cn/embedded/39853.html

相关文章

4G小车的公网直播推流

一直想做一个小车, 可以通过4G推流, 没想到现在很多云服务提供商, SRS云服务器已经可以一键搭建了. 硬件方面, 就是一个1126驮着一个3516, 1126负责4G连接, 转流到Intenet, 3516负责vi_venc_rtsp 思路如下, 我的1126的摄像头一直没能横过来, 所以就不用1126的摄像头了, 先用35…

Celery Redis 集群版连接和PyCharm启动配置

目录 使用Redis cluster版作为broker原因 PyCharm配置 使用Redis cluster版作为broker 在celery5及其之前版本,需要配置如下才可行 celery_app.conf.update( broker_transport_options{“global_keyprefix”: “{celery}:”}, ) 原因 https://github.com/celery/…

QT--3

Qt 1>将文本编辑器完整实现 #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);this->resize(800,600);edit1 new QTextEdit(this);edit1->resize(600…

力扣每日一题115:不同的子序列

题目 困难 给你两个字符串 s 和 t ,统计并返回在 s 的 子序列 中 t 出现的个数,结果需要对 109 7 取模。 示例 1: 输入:s "rabbbit", t "rabbit" 输出:3 解释: 如下所示, 有 3 种…

java设计模式 桥接

桥接模式(Bridge Pattern)是软件工程中的一种设计模式,它将抽象部分与它的实现部分分离,使它们可以独立变化。这种类型的设计模式属于结构型模式,它通过提供抽象化和实现化之间的桥接结构,来实现二者的解耦…

动手学深度学习16 Pytorch神经网络基础

动手学深度学习16 Pytorch神经网络基础 1. 模型构造2. 参数管理1. state_dict()2. normal_() zeros_()3. xavier初始化共享参数的好处 3. 自定义层4. 读写文件net.eval() 评估模式 QA 1. 模型构造 定义隐藏层–模型结构定义前向函数–模型结构的调用 import torch from torch…

HTML【常用的标签】、CSS【选择器】

day45 HTML 继day44,w3cschool 常用的标签 k) 表格 表格由 table 标签来定义。每个表格均有若干行(由 tr 标签定义),每行被分割为若干单元格(由 标签定义)。字母 td指表格数据(table data&…

推荐全网最全的AI小白进阶指南

1. 引言 您想学习人工智能?但不知道如何开始,也不知道从哪里开始?互联网上的资源总是丰富多彩,质量参差不齐,往往容易看花眼而无从下手。 鉴于此,本文重点推荐一些个人收集的还不错的一些资源供大家学习参…