Mysql優化之優化工具profiling

2021-09-07 18:41:50 字數 1539 閱讀 5492

程式設計師的成長之路

2016-11-23 22:42

mysql優化之優化工具profiling

前言mysql優化技術:

mysql優化不是做乙個操作就可以的優化,它包含很多的細節,需要一點一點的優化,最後這個效能提公升會很高 .

引申假設有這樣的需求:

**現在很慢 ? 專案裡面有很多的sql ,眾多的sql裡面找到效能很差的sql呢?

什麼是慢查詢: 效能低效的sql

先來看一下這個東西, show variables like "%slow%"; # 檢視慢查詢的一些東西

注:慢查詢低效的sql會被記錄在 slow_query_log_file

並且允許我們更改此檔案的位置

eg: set global slow_query_log_file = "d:/slow.log";

接下來什麼又稱作效能低效的sql呢:

就是你的sql執行的時間超過你無法忍受的時間

eg: show variables like "long_query_time"; #預設是10秒

因此,假設我們無法忍受的時間 設定為 1秒

set long_query_time = 1;

則執行時間超過1秒的sql都會被記錄到d:/slow.log檔案中,讓後進行分析與優化。

效能優化的工具

當我們已經找到了一些慢查詢之後,就需要我們借助一些工具來分析,也就是本次要用到的profiling

如果記不太清了,可以執行下面sql找一下

會看到這麼一條資料:profiling | off

首先,需要開啟這個優化工具:

set profiling = 1;

然後,開始分析sql:show profiles;

會查到三列資料:query_id 查詢編號,duration 執行時間 query 查詢的sql語句

我們發現duration的時間精度更細,這能方便我們更細的觀察優化的效果。

我們還可以查詢某一條,更細的執**況

這能讓我們更加深入的了解sql各個過程執行的時間,來檢驗我們做的sql語句優化的提公升效果。

最後,題外話

為了讓我們的分析結果更準確,還應該熟練使用 reset query cache; #清除sql快取,來得到乙個客觀資料結果。

希望對一起學習的朋友有一絲啟迪,帶來一些幫助 ^-^

Mysql優化之優化工具profiling

程式設計師的成長之路 2016 11 23 22 42 mysql優化之優化工具profiling 前言mysql優化技術 mysql優化不是做乙個操作就可以的優化,它包含很多的細節,需要一點一點的優化,最後這個效能提公升會很高 引申假設有這樣的需求 現在很慢 專案裡面有很多的sql 眾多的sql裡...

mysql 查優化工具詢 mysql 查詢優化

檢視sql計畫任務 使用explain 字段解釋 一 id欄位 一組資料,表示任務被執行的順序,序號越大的任務越先執行 二 select type欄位 1.不包含任何子查詢或union等查詢 2.primary 包含子查詢最外層查詢就顯示為 primary 3.subquery 在select或 w...

彙編優化工具

彙編優化工具 使彙編 更具可讀性,並提高彙編速度 優化15000行大約須要30秒 import rfile.h main rstr line del rstr s 符號替換 rstr sym replace rstr s rstr sym trans rstr s rstr seq replace ...