欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

解析Mysql Profiling的使用

 更新時(shí)間:2013年06月14日 10:19:41   作者:  
本篇文章是對Mysql Profiling的使用進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
profiling是個很好用的mysql性能分析工具,今兒就來試驗(yàn)下profiling的功能。感謝 有愛玫瑰的博文:
mysql 的 sql 性能分析器主要用途是顯示 sql 執(zhí)行的整個過程中各項(xiàng)資源的使用情況。分析器可以更好的展示出不良 SQL 的性能問題所在。
下面我們舉例介紹一下MySQL SQL Profiler的使用方法:
首先,開啟 MySQL SQL Profiler
復(fù)制代碼 代碼如下:

mysql> SELECT @@profiling;
    +-------------+
    | @@profiling |
    +-------------+
    | 0 |
    +-------------+
    1 row in set (0.00 sec)
    mysql> SET profiling = 1;
    Query OK, 0 rows affected (0.00 sec)
    mysql> SELECT @@profiling;
    +-------------+
    | @@profiling |
    +-------------+
    | 1 |
    +-------------+

1 row in set (0.00 sec)默認(rèn)情況下 profiling 的值為 0 表示 MySQL SQL Profiler 處于 OFF 狀態(tài),開啟 SQL 性能分析器后 profiling 的值為 1.
通過 sql 性能分析器,我們來對比一下 下列語句前后 2 次執(zhí)行過程的差異,對我們了解 sql 的詳細(xì)執(zhí)行過程是非常有幫助的。
復(fù)制代碼 代碼如下:

mysql> create table t_engines select * from t_engines1;
    Query OK, 57344 rows affected (0.10 sec)
    Records: 57344 Duplicates: 0 Warnings: 0
    mysql> select count(*) from t_engines;
    +----------+
    | count(*) |
    +----------+
    | 57344 |
    +----------+
    1 row in set (0.00 sec)
    mysql> select count(*) from t_engines;
    +----------+
    | count(*) |
    +----------+
    | 57344 |
    +----------+
    1 row in set (0.00 sec)
    mysql> SHOW PROFILES;
    +----------+------------+-------------------------------------------------+
    | Query_ID | Duration | Query |
    +----------+------------+-------------------------------------------------+
    | 26 | 0.10213775 | create table t_engines select * from t_engines1 |
    | 27 | 0.00032775 | select count(*) from t_engines |
    | 28 | 0.00003850 | select count(*) from t_engines |
    +----------+------------+-------------------------------------------------+
    15 rows in set (0.01 sec)
    mysql> SHOW PROFILE FOR QUERY 27;
    +--------------------------------+------------+
    | Status | Duration |
    +--------------------------------+------------+
    | (initialization) | 0.00000425 |
    | checking query cache for query | 0.00004050 |
    | checking permissions | 0.00001050 |
    | Opening tables | 0.00018250 |
    | System lock | 0.00000450 |
    | Table lock | 0.00001775 |
    | init | 0.00001075 |
    | optimizing | 0.00000550 |
    | executing | 0.00002775 |
    | end | 0.00000450 |
    | query end | 0.00000325 |
    | storing result in query cache | 0.00000400 |
    | freeing items | 0.00000400 |
    | closing tables | 0.00000500 |
    | logging slow query | 0.00000300 |
    +--------------------------------+------------+
    15 rows in set (0.00 sec)
    mysql> SHOW PROFILE FOR QUERY 28;
    +-------------------------------------+------------+
    | Status | Duration |
    +-------------------------------------+------------+
    | (initialization) | 0.00000350 |
    | checking query cache for query | 0.00000750 |
    | checking privileges on cached query | 0.00000500 |
    | checking permissions | 0.00000525 |
    | sending cached result to client | 0.00001275 |
    | logging slow query | 0.00000450 |
    +-------------------------------------+------------+
    6 rows in set (0.00 sec) mysql> SELECT sum( FORMAT(DURATION, 6)) AS DURATION FROM INFORMATION_SCHEMA.PROFILING WHERE QUERY_ID =27 ORDER BY SEQ;
    +----------+
    | DURATION |
    +----------+
    | 0.000326 |
    +----------+
    1 row in set (0.00 sec) mysql> SELECT sum( FORMAT(DURATION, 6)) AS DURATION FROM INFORMATION_SCHEMA.PROFILING WHERE QUERY_ID =28 ORDER BY SEQ;
    +----------+
    | DURATION |
    +----------+
    | 0.000039 |
    +----------+
    1 row in set (0.00 sec)

從上面的例子中我們可以清晰的看出 2 次執(zhí)行 count 語句的差別, SHOW PROFILE FOR QUERY 27 展現(xiàn)的是第一次 count 統(tǒng)計(jì)的執(zhí)行過程,包含了 Opening tables 、 Table lock 等操作 。而 SHOW PROFILE FOR QUERY 28 展示了第二次 count 統(tǒng)計(jì)的執(zhí)行過程 , 第二次 count 直接從查詢緩存中返回 count 統(tǒng)計(jì)結(jié)果,通過對比 2 次統(tǒng)計(jì)的總執(zhí)行時(shí)間發(fā)現(xiàn),緩存讀的速度接近物理讀的 10 倍。通過使用 SQL 性能分析器可以幫助我們對一些比較難以確定性能問題的 SQL 進(jìn)行診斷,找出問題根源。

相關(guān)文章

  • MySQL存儲結(jié)構(gòu)用法案例分析

    MySQL存儲結(jié)構(gòu)用法案例分析

    這篇文章主要介紹了MySQL存儲結(jié)構(gòu)用法,結(jié)合具體案例形式分析了mysql存儲結(jié)構(gòu)相關(guān)使用方法與操作注意事項(xiàng),需要的朋友可以參考下
    2018-07-07
  • MAC下Mysql5.7+ MySQL Workbench安裝配置方法圖文教程

    MAC下Mysql5.7+ MySQL Workbench安裝配置方法圖文教程

    這篇文章主要為大家詳細(xì)介紹了MAC下Mysql5.7+ MySQL Workbench安裝配置方法圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-06-06
  • Mysql導(dǎo)入導(dǎo)出時(shí)遇到的問題解決

    Mysql導(dǎo)入導(dǎo)出時(shí)遇到的問題解決

    這篇文章主要給大家介紹了關(guān)于Mysql導(dǎo)入導(dǎo)出時(shí)遇到問題的解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用Mysql具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • 一文搞懂MySQL索引特性(清晰明了)

    一文搞懂MySQL索引特性(清晰明了)

    索引可以提高數(shù)據(jù)庫的性能,提高一個海量數(shù)據(jù)的檢索速度,但是插入,更新,刪除的速度相應(yīng)會降低,下面這篇文章主要給大家介紹了關(guān)于MySQL索引特性的相關(guān)資料,需要的朋友可以參考下
    2023-04-04
  • MySQL事務(wù)處理與應(yīng)用簡析

    MySQL事務(wù)處理與應(yīng)用簡析

    事務(wù)處理在各種管理系統(tǒng)中都有著廣泛的應(yīng)用,比如人員管理系統(tǒng),很多同步數(shù)據(jù)庫操作大都需要用到事務(wù)處理。這篇文章主要介紹了MySQL事務(wù)處理,需要的朋友可以參考下
    2014-06-06
  • 很全面的MySQL處理重復(fù)數(shù)據(jù)代碼

    很全面的MySQL處理重復(fù)數(shù)據(jù)代碼

    這篇文章主要為大家詳細(xì)介紹了MySQL處理重復(fù)數(shù)據(jù)的實(shí)現(xiàn)代碼,如何防止數(shù)據(jù)表出現(xiàn)重復(fù)數(shù)據(jù)及如何刪除數(shù)據(jù)表中的重復(fù)數(shù)據(jù),感興趣的小伙伴們可以參考一下
    2016-05-05
  • 數(shù)據(jù)結(jié)構(gòu)-樹(三):多路搜索樹B樹、B+樹

    數(shù)據(jù)結(jié)構(gòu)-樹(三):多路搜索樹B樹、B+樹

    這篇文章主要介紹了多路搜索樹B樹、B+樹,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • windows10下 MySQL msi安裝教程圖文詳解

    windows10下 MySQL msi安裝教程圖文詳解

    這篇文章主要介紹了windows10 MySQL msi安裝教程,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-03-03
  • MySQL日期時(shí)間函數(shù)知識匯總

    MySQL日期時(shí)間函數(shù)知識匯總

    這篇文章主要介紹了MySQL日期時(shí)間函數(shù)知識匯總,這不同數(shù)據(jù)庫之間基本相同,只會有個別函數(shù)的差異。下文詳細(xì)介紹,需要的小伙伴可以參考一下
    2022-03-03
  • Mysql優(yōu)化技巧之Limit查詢的優(yōu)化分析

    Mysql優(yōu)化技巧之Limit查詢的優(yōu)化分析

    這篇文章主要給大家介紹了關(guān)于Mysql優(yōu)化技巧之Limit查詢的優(yōu)化分析,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用Mysql具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07

最新評論