Rumah pangkalan data tutorial mysql mysql慢查询和EXPLAIN的相关介绍

mysql慢查询和EXPLAIN的相关介绍

May 12, 2017 am 11:04 AM

前记:今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。

1、开启慢查询

1> 查看慢查询是否开启
   show variables like "%quer%";
   slow_query_log = ON  #已开启
Salin selepas log masuk

2> 开启方法:my.cnf目录配置

  slow_query_log=on #是否开启
   slow_query_log_file=/opt/MySQL_Data/TEST1-slow.log #慢查询文件位置
   long_query_time=2 #查询超过多少秒才记录
Salin selepas log masuk

2、EXPLAIN慢查询日志里出现的SELECT查询

explain列的解释

table:显示这一行的数据是关于哪张表的

type:这是重要的列,显示连接使用了何种类型。从最好到最差的连接类型为const、eq_reg、ref、range、index、all

possible_keys:显示可能应用在这张表中的索引。如果为空,没有可能的索引。可以为相关的域从where语句中选择一个合适的语句

key: 实际使用的索引。如果为null,则没有使用索引。很少的情况下,mysql会选择优化不足的索引。这种情况下,可以在select语句中使用use index(indexname)来强制使用一个索引或者用ignore index(indexname)来强制mysql忽略索引

key_len:使用的索引的长度。在不损失精确性的情况下,长度越短越好

ref:显示索引的哪一列被使用了,如果可能的话,是一个常数

rows:mysql认为必须检查的用来返回请求数据的行数

extra:关于mysql如何解析查询的额外信息。例子:using temporary和using filesort,意思mysql根本不能使用索引,结果是检索会很慢

【相关推荐】

1. 免费mysql在线视频教程

2. MySQL最新手册教程

3. 数据库设计那些事

Atas ialah kandungan terperinci mysql慢查询和EXPLAIN的相关介绍. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial Java
1662
14
Tutorial PHP
1262
29
Tutorial C#
1235
24
Kaedah penyelesaian masalah dan pengoptimuman pertanyaan lambat Redis Kaedah penyelesaian masalah dan pengoptimuman pertanyaan lambat Redis Jun 20, 2023 am 11:40 AM

Redis ialah sistem storan struktur data memori berprestasi tinggi dan berskala yang digunakan secara meluas dalam cache data, baris gilir mesej, kunci teragih dan medan lain. Dalam proses aplikasi Redis, pertanyaan perlahan ialah masalah prestasi biasa. Apabila masa tindak balas permintaan pemprosesan Redis melebihi ambang yang ditentukan, ia boleh dipanggil pertanyaan perlahan. Pertanyaan perlahan boleh menyebabkan prestasi Redis merosot dan menjejaskan kestabilan dan kebolehpercayaan aplikasi. Untuk memastikan ketersediaan dan kebolehpercayaan yang tinggi bagi Redis, kami perlu menyelesaikan masalah pertanyaan perlahan daripada pelbagai aspek dan

Apakah maksud key_len dalam mysql explain dan cara mengiranya Apakah maksud key_len dalam mysql explain dan cara mengiranya Jun 02, 2023 am 09:52 AM

Prakata: Salah satu lajur dalam hasil pelaksanaan explain dalam Mysql ialah key_len Jadi apakah maksud key_len? key_len: Menunjukkan bilangan bait yang digunakan oleh indeks Berdasarkan nilai ini, penggunaan indeks boleh dinilai Terutama apabila menggabungkan indeks, adalah sangat penting untuk menilai berapa banyak bahagian indeks yang digunakan. Nota tentang pengiraan key_len: Maklumat tambahan tentang medan indeks: ia boleh dibahagikan kepada jenis data panjang berubah dan panjang tetap Apabila medan indeks ialah jenis data panjang tetap, seperti char, int, datetime, tanda ialah diperlukan untuk menunjukkan sama ada tanda ini Menduduki 1 bait (untuk medan bukan nol, 1 bait ini tidak diperlukan untuk jenis data panjang berubah-ubah, seperti v

Log tingkah laku MySql dan pertanyaan perlahan: cara mencari masalah prestasi dengan cepat Log tingkah laku MySql dan pertanyaan perlahan: cara mencari masalah prestasi dengan cepat Jun 15, 2023 pm 09:01 PM

Dengan perkembangan pesat sistem aplikasi, cara untuk menyelesaikan masalah prestasi sistem dengan berkesan telah menjadi semakin penting. Untuk aplikasi yang menggunakan pangkalan data MySql, log tingkah laku dan pertanyaan perlahan ialah dua alat penting untuk mengesan masalah prestasi. Artikel ini akan memperkenalkan log tingkah laku MySql dan pertanyaan perlahan, dan membincangkan cara menggunakan kedua-dua alatan ini untuk mengesan masalah prestasi dengan cepat. 1. Log tingkah laku MySql Log tingkah laku MySql ialah log yang merekodkan semua operasi yang dilakukan oleh pelayan pangkalan data. Dengan melihat log tingkah laku, kita boleh belajar

Apakah sifat-sifat mysql yang dijelaskan? Apakah sifat-sifat mysql yang dijelaskan? Jun 01, 2023 pm 10:18 PM

1. jadual Jadual yang akan disoal 2. taip jenis pertanyaan indeks, dari yang terbaik hingga yang paling teruk: system>const>eq_ref>ref>range>index>ALL. Secara umumnya, pastikan pertanyaan mencapai sekurang-kurangnya tahap julat, dan sebaik-baiknya mencapai rujukan. 3. possible_keys memaparkan satu atau lebih indeks yang boleh digunakan pada jadual ini. Jika terdapat indeks untuk medan yang terlibat dalam pertanyaan, indeks akan disenaraikan, tetapi ia mungkin tidak digunakan oleh pertanyaan 4. Indeks sebenarnya digunakan oleh kunci . Jika indeks penutup digunakan dalam pertanyaan, indeks Hanya muncul dalam senarai kunci 5. kunci

Contoh analisis rekod penggunaan alat pt-query-digest dalam MySQL Contoh analisis rekod penggunaan alat pt-query-digest dalam MySQL Nov 30, 2022 pm 05:07 PM

Artikel ini membawakan anda pengetahuan yang berkaitan tentang mysql Ia terutamanya memperkenalkan alat pt-query-digest untuk menganalisis log pertanyaan lambat mysql Mari kita lihat bersama-sama.

Amalan pengoptimuman pertanyaan lambat pangkalan data: aplikasi dalam pengaturcaraan PHP Amalan pengoptimuman pertanyaan lambat pangkalan data: aplikasi dalam pengaturcaraan PHP Jun 23, 2023 am 08:37 AM

Amalan Pengoptimuman Pertanyaan Lambat Pangkalan Data: Aplikasi dalam Pengaturcaraan PHP Sebagai pengaturcara PHP, anda sering menghadapi masalah kecekapan pertanyaan pangkalan data yang rendah semasa proses pembangunan, iaitu apa yang dipanggil "permintaan lambat". Jika tidak dioptimumkan, pertanyaan perlahan ini boleh menyebabkan program berjalan perlahan dan mencipta pengalaman pengguna yang buruk. Artikel ini terutamanya memperkenalkan beberapa idea pengoptimuman dan teknik praktikal untuk membantu pengaturcara PHP menyelesaikan masalah pertanyaan lambat. 1. Kurangkan bilangan pertanyaan pangkalan data sebanyak mungkin Mengurangkan bilangan pertanyaan pangkalan data adalah cara penting untuk meningkatkan kecekapan sistem

Bagaimana untuk mengelakkan pertanyaan lambat dalam pembangunan bahasa PHP Bagaimana untuk mengelakkan pertanyaan lambat dalam pembangunan bahasa PHP Jun 11, 2023 am 09:10 AM

Dengan perkembangan pesat Internet, kebolehpercayaan dan kecekapan telah menjadi salah satu isu terpenting bagi pembangun. Bagi pembangun bahasa PHP, menyelesaikan pertanyaan lambat telah menjadi salah satu masalah biasa. Kemunculan pertanyaan perlahan akan menyebabkan tapak web bertindak balas dengan perlahan, yang akan menjejaskan pengalaman pengguna malah boleh membawa kepada isu keselamatan data. Untuk tujuan ini, artikel ini akan memperkenalkan cara untuk mengelakkan pertanyaan lambat dalam pembangunan PHP. 1. Apakah pertanyaan lambat? Dalam pangkalan data MySQL, fenomena pertanyaan yang lebih perlahan daripada yang dijangkakan dipanggil pertanyaan perlahan. Pertanyaan perlahan bukan sahaja menjejaskan prestasi tapak web anda;

Apakah yang dilakukan oleh perintah Explain mysql? Apakah yang dilakukan oleh perintah Explain mysql? May 31, 2023 pm 12:33 PM

Konsep 1. Explain digunakan untuk menganalisis pernyataan pertanyaan SELECT Pembangun boleh mengoptimumkan pernyataan pertanyaan dengan menganalisis hasil Explain. Fungsi 2. Melalui arahan explain, kita boleh belajar cara SQL dilaksanakan, dan kemudian menghuraikan hasil explain boleh membantu kita menggunakan indeks yang lebih baik dan akhirnya mengoptimumkannya! Melalui arahan explain, kita boleh mengetahui maklumat berikut: susunan bacaan jadual, jenis operasi membaca data, indeks mana yang boleh digunakan, indeks mana yang sebenarnya digunakan, rujukan antara jadual, berapa banyak baris dalam setiap jadual yang ditanya. oleh maklumat pengoptimum, dsb. Contoh explainselect*fromtable_user;

See all articles