日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql 开发进阶篇系列 41 mysql日志之慢查询日志

發(fā)布時間:2023/12/9 数据库 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql 开发进阶篇系列 41 mysql日志之慢查询日志 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一.概述

???????? 慢查詢?nèi)罩居涗浟怂械某^sql語句( 超時參數(shù)long_query_time單位 秒),獲得表鎖定的時間不算作執(zhí)行時間。慢日志默認寫入到參數(shù)datadir(數(shù)據(jù)目錄)指定的路徑下。默認文件名是[hostname]_slow.log,默認超時是10秒,默認不開啟慢查詢?nèi)罩尽O旅娌榭绰罩镜膸讉€參數(shù):

-- 是否開啟慢日志 SHOW VARIABLES LIKE 'slow_query_log';

  

-- 慢日志文件記錄位置 SHOW VARIABLES LIKE 'slow_query_log_file';

  

-- 慢日志設(shè)置超時sql閥值(時間秒) 默認10秒 SHOW VARIABLES LIKE 'long_query_time';

  

-- 慢日志存儲方式 SHOW VARIABLES LIKE '%log_output%';

  

  log_output參數(shù)是指日志存儲方式。log_output='FILE'表示將日志存入文件,默認值是'FILE'。log_output='TABLE'表示將日志存入數(shù)據(jù)庫,這樣日志信息就會被寫入到mysql.slow_log表中。支持同時兩種日志存儲方式如:log_output='FILE,TABLE'。另外:log_queries_not_using_indexes:未使用索引的查詢也被記錄到慢查詢?nèi)罩局?#xff08;可選項)。

二. 設(shè)置慢日志參數(shù)

  下面設(shè)置my.cnf配置文件,將slow_query_log=1為開啟慢查詢記錄,將long_query_time=1為記錄超時1秒鐘的sql語句。
    

  重啟mysqld服務(wù)后,在次查詢慢日志參數(shù),如下所示:
    
    

?

三.演示超時sql以及查看慢日志

  -- 查詢超大結(jié)果集SELECT * FROM b LIMIT 1000000

  執(zhí)行信息如下圖所示:

   

  下面搜索日志中含有select 關(guān)鍵詞的慢查詢語句:
    
  下面搜索日志中含有CALL關(guān)鍵詞的存儲過程的慢查詢語句:
    

  -- 查詢有多少條慢查詢記錄,可以使用系統(tǒng)變量。下面統(tǒng)計了慢查詢共10次。SHOW GLOBAL STATUS LIKE '%slow_queries%';

    

四. 日志分析工具mysqldumpslow

  當慢日志文件內(nèi)容超大時,需要對慢查詢進行分類匯總,可以使用mysqldumpslow工具。對于sql文本一致的,會視為同一個語句自動統(tǒng)計,如下面統(tǒng)計CALL調(diào)用9次。對于sql文本一致使用參數(shù)的,參數(shù)變更值使用N來代替。如下圖所示:
    

?

五. 在線清除慢日志內(nèi)容

?

FLUSH LOGS; -- 在線關(guān)閉慢日志 SET GLOBAL slow_query_log=0; -- 刪除日志 rm

    

-- 在線開啟慢日志 SET GLOBAL slow_query_log=1;

    刪除日志和開啟慢日志后,會自動重新重成新的慢日志,新的內(nèi)容如下圖所示 :
    

?

六. 日志篇總結(jié) 

  在日志篇系列里講到了最常用的4種日志類型:錯誤日志,二進制日志,查詢?nèi)罩?#xff0c;慢查詢?nèi)罩尽?4種日志各有不同用途:
    (1) 系統(tǒng)故障時,建議首先查看錯誤日志。
    (2) 如果要記錄數(shù)據(jù)的變更,數(shù)據(jù)備份,數(shù)據(jù)復(fù)制等操作時,二進制日志必須開啟 (默認不開啟)。
    (3) 如果希望記錄數(shù)據(jù)庫發(fā)生的任何操作,包括select,需要開啟。一般情況不建議打開,影響系統(tǒng)性能(默認不開啟)。
    (4) 如果要排查系統(tǒng)性能問題,想找到有性能的sql語句,慢日志則需要開啟(默認不開啟)。

?

轉(zhuǎn)載于:https://www.cnblogs.com/MrHSR/p/9635792.html

總結(jié)

以上是生活随笔為你收集整理的mysql 开发进阶篇系列 41 mysql日志之慢查询日志的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。