Rumah pangkalan data tutorial mysql 学会读懂MySql的慢查询日志_MySQL

学会读懂MySql的慢查询日志_MySQL

Jun 01, 2016 pm 12:59 PM
log

在前边的博客《何时、如何开启 MySql 日志?》中,我们了解到了如何启用 MySql 的慢查询日志。今天我们来看一下如何去读懂这些慢查询日志。
在跟踪慢查询日志之前,首先你得保证最少发生过一次慢查询。如果你没有可以自己制造一个:
root@server# mysql -e 'SELECT SLEEP(8);
上述操作所做的事情只有一个:"睡"(啥也不做)八秒。这个长度应该足以被记录在你的慢查询日志里了(我通常推荐针对长于 2 或 3 秒的查询进行慢查询记录)。
首先,我们看看一个慢速查询日志条目是什么样子的:
root@server# tail /var/log/slowqueries
# Time: 130320 7:30:26
# User@Host: db_user[db_database] @ localhost []
# Query_time: 4.545309 Lock_time: 0.000069 Rows_sent: 219 Rows_examined: 254
SET timestamp=1363779026;
SELECT option_name, option_value FROM wp_options WHERE autoload = 'yes';
我们来过一下每一行所代表的意思:
第一行表示记录日志时的时间。其格式是 YYMMDD H:M:S。我们可以看出上面的查询记录于 2013 年 3 月 20 日上午 7:30 - 注意:这个是服务器时间,可能跟你本地时间有所不同然后,我们可以看到 MySql 用户、服务器以及主机名第三行表示总的查询时间、锁定时间、"发送"或者返回的行数、查询过程中所检查的行数接下来我们看到的是 SET timestamp=UNIXTIME; 这是查询实际发生的时间。如果你想找现在的一些慢查询,通过检查这个就不会发生你所检查的是几个月之前所发生的慢查询了。下边我会介绍如何将其变成一个有用的时间最后一行显示完整的查询语句要将 Unix 时间转成一个人类可读的时间,可以使用 date -d 命令。输入 date -d @(记得要包括 @ 符号),然后在 @(之间没有空格)后粘贴日志中的时间戳:
root@server# date -d @1363779026
Wed Mar 20 07:30:26 EDT 2013
上面例子中我们可以看到查询进行的同时记录了该日志 - 但是对于一台超负载的服务器常常并非如此。因此记住:SET timestamp= value 才是实际的查询的执行时间。

现在我来演示一下我是如何使用 MySql 慢查询日志来解决我的某个网站上的一个真实问题的。你的查询可能与此不太一样,但是解决问题的原理是相通的。

how-to-read-mysql-query-log

我在一个博客网站上使用了一个名为 Tweet Blender 的插件来自动显示相关微博到我的关键字中。不幸的是,一些人发现了这个并使用我的微博中的关键字来发一些垃圾微博 - 不管怎样,最终结果就是我的博客网站上显示的是一些垃圾微博。因为相关微博在我的网站存在的时间并不长,所以我在网站上并没有发现什么问题,直到我查看慢查询日志。
我的网站对带有垃圾信息(垃圾信息常常都是一样的)的微博进行了几个类似的查询,经过一段时间后这些查询的数量太大以致其中的一些运行迟缓。当这种情况发生的时候,由于请求的数量非常大,有些朋友的网站很可能会因此假死或者直接报错,但是我的服务器经过很好的性能调优,因此并没有很明显的影响。幸运的是当时我正在进行慢查询日志查看,及时发现了这一情况并迅速解决了这个问题。
这个问题的解决很简单 - Tweet Blender 具备一个漂亮的过滤功能,我只需将该微博用户名以及一些垃圾关键字添加到 "exclude" 列表,之后就再也没有这种问题了。这样看来,对我们自己网站以及日志的监控是多么重要,即使是一星期对每个站点/服务器只进行一次快速检查。
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

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Akan R.E.P.O. Ada Crossplay?
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

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)

Apakah ID acara 6013 dalam win10? Apakah ID acara 6013 dalam win10? Jan 09, 2024 am 10:09 AM

Log win10 boleh membantu pengguna memahami penggunaan sistem secara terperinci Ramai pengguna mesti menemui log 6013 apabila mencari log pengurusan mereka sendiri. Apakah log win10 6013: 1. Ini log biasa. Maklumat dalam log ini tidak bermakna bahawa komputer anda telah dimulakan semula, tetapi ia menunjukkan berapa lama sistem telah berjalan sejak kali terakhir ia dimulakan. Log ini akan muncul sekali setiap hari pada pukul 12 tepat. Bagaimana untuk menyemak berapa lama sistem telah berjalan Anda boleh memasukkan info sistem dalam cmd. Terdapat satu baris di dalamnya.

Saiz penimbal pembalak untuk kegunaan log Saiz penimbal pembalak untuk kegunaan log Mar 13, 2023 pm 04:27 PM

Fungsinya adalah untuk memberi maklum balas kepada jurutera mengenai maklumat penggunaan dan rekod untuk memudahkan analisis masalah (digunakan semasa pembangunan); Penampan pembalakan ialah kawasan kecil sementara yang digunakan untuk penyimpanan jangka pendek vektor perubahan bagi log semula untuk ditulis pada cakera. Log penimbal tulis ke cakera ialah kumpulan vektor perubahan daripada berbilang transaksi. Walaupun begitu, vektor perubahan dalam penimbal log ditulis ke cakera dalam hampir masa nyata, dan apabila sesi mengeluarkan kenyataan COMMIT, operasi tulis penimbal log dilakukan dalam masa nyata.

Menyelesaikan masalah Isu Log Ralat Acara 7034 dalam Win10 Menyelesaikan masalah Isu Log Ralat Acara 7034 dalam Win10 Jan 11, 2024 pm 02:06 PM

Log win10 boleh membantu pengguna memahami penggunaan sistem secara terperinci Ramai pengguna telah melihat banyak log ralat semasa mencari log pengurusan mereka sendiri. Bagaimana untuk menyelesaikan peristiwa log win10 7034: 1. Klik "Mula" untuk membuka "Panel Kawalan" 2. Cari "Alat Pentadbiran" 3. Klik "Perkhidmatan" 4. Cari HDZBCommServiceForV2.0, klik kanan "Stop Service" dan ubahnya kepada "Mula Manual"

Cara menggunakan pengelogan dalam ThinkPHP6 Cara menggunakan pengelogan dalam ThinkPHP6 Jun 20, 2023 am 08:37 AM

Dengan perkembangan pesat Internet dan aplikasi Web, pengurusan log menjadi semakin penting. Apabila membangunkan aplikasi web, cara mencari dan mencari masalah adalah isu yang sangat kritikal. Sistem pembalakan ialah alat yang sangat berkesan yang boleh membantu kami mencapai tugasan ini. ThinkPHP6 menyediakan sistem pengelogan berkuasa yang boleh membantu pembangun aplikasi mengurus dan menjejaki peristiwa yang berlaku dalam aplikasi dengan lebih baik. Artikel ini akan memperkenalkan cara menggunakan sistem pembalakan dalam ThinkPHP6 dan cara menggunakan sistem pembalakan

Cara melihat sejarah log ubat anda dalam apl Kesihatan pada iPhone Cara melihat sejarah log ubat anda dalam apl Kesihatan pada iPhone Nov 29, 2023 pm 08:46 PM

iPhone membolehkan anda menambah ubat dalam apl Kesihatan untuk menjejak dan mengurus ubat, vitamin dan suplemen yang anda ambil setiap hari. Anda kemudian boleh log ubat yang telah anda ambil atau langkau apabila anda menerima pemberitahuan pada peranti anda. Selepas anda mencatatkan ubat anda, anda boleh melihat kekerapan anda mengambil atau melangkaunya untuk membantu anda menjejaki kesihatan anda. Dalam siaran ini, kami akan membimbing anda untuk melihat sejarah log ubat yang dipilih dalam apl Kesihatan pada iPhone. Panduan ringkas tentang cara melihat sejarah log ubat anda dalam Apl Kesihatan: Pergi ke Apl Kesihatan>Semak imbas>Ubat>Ubat>Pilih Ubat>Pilihan&a

Penjelasan terperinci tentang arahan melihat log dalam sistem Linux! Penjelasan terperinci tentang arahan melihat log dalam sistem Linux! Mar 06, 2024 pm 03:55 PM

Dalam sistem Linux, anda boleh menggunakan arahan berikut untuk melihat kandungan fail log: perintah ekor: Perintah ekor digunakan untuk memaparkan kandungan pada akhir fail log. Ia adalah arahan biasa untuk melihat maklumat log terkini. ekor [pilihan] [nama fail] Pilihan yang biasa digunakan termasuk: -n: Tentukan bilangan baris yang akan dipaparkan, lalai ialah 10 baris. -f: Pantau kandungan fail dalam masa nyata dan secara automatik memaparkan kandungan baharu apabila fail dikemas kini. Contoh: tail-n20logfile.txt#Paparkan 20 baris terakhir fail logfile.txt tail-flogfile.txt#Pantau kandungan kemas kini fail logfile.txt dalam arahan kepala masa nyata: Perintah kepala digunakan untuk memaparkan permulaan daripada fail log

Tiga arahan untuk melihat log dalam Linux Tiga arahan untuk melihat log dalam Linux Jan 04, 2023 pm 02:00 PM

Tiga arahan untuk melihat log dalam Linux ialah: 1. perintah ekor, yang boleh melihat perubahan dalam kandungan fail dan fail log dalam masa nyata 2. perintah berbilang ekor, yang boleh memantau berbilang fail log pada masa yang sama; yang boleh Perubahan pada log boleh dilihat dengan cepat tanpa mengacaukan skrin.

Fahami maksud acara ID455 dalam log win10 Fahami maksud acara ID455 dalam log win10 Jan 12, 2024 pm 09:45 PM

Log win10 mempunyai banyak kandungan yang kaya. Ramai pengguna mesti melihat ralat paparan ID455 semasa mencari log pengurusan mereka sendiri. Jadi apa maksudnya. Apakah peristiwa ID455 dalam log win10: 1. ID455 ialah ralat <ralat> yang berlaku dalam <fail> apabila stor maklumat membuka fail log.

See all articles