91aaa在线国内观看,亚洲AV午夜福利精品一区二区,久久偷拍人视频,久久播这里有免费视播

<strong id="fvuar"></strong>

  • <sub id="fvuar"><dl id="fvuar"><em id="fvuar"></em></dl></sub>

    1. 千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構(gòu)

      手機站
      千鋒教育

      千鋒學習站 | 隨時隨地免費學

      千鋒教育

      掃一掃進入千鋒手機站

      領(lǐng)取全套視頻
      千鋒教育

      關(guān)注千鋒學習站小程序
      隨時隨地免費學習課程

      當前位置:首頁  >  技術(shù)干貨  > SQL優(yōu)化之慢查詢

      SQL優(yōu)化之慢查詢

      來源:千鋒教育
      發(fā)布人:zyh
      時間: 2023-06-12 15:01:00 1686553260

        全文大約【1240】字,不說廢話,只講可以讓你學到技術(shù)、明白原理的純干貨!本文帶有豐富案例及配圖視頻,讓你更好的理解和運用文中的技術(shù)概念,并可以給你帶來具有足夠啟迪的思考......

       SQL優(yōu)化之慢查詢

        一. 慢查詢?nèi)罩?/strong>

        SQL是我們和數(shù)據(jù)庫交流最重要的部分,所以我們在調(diào)優(yōu)的時候,需要花費的大量時間就在SQL調(diào)優(yōu)上面。

        慢查詢?nèi)罩景凑招【幍慕?jīng)驗來說就是發(fā)現(xiàn)系統(tǒng)中查詢慢的SQL語句的有效手段之一。常見的分析手段有慢查詢?nèi)罩?,EXPLAIN 分析查詢,通過定位分析性能的瓶頸,才能更好的優(yōu)化數(shù)據(jù)庫系統(tǒng)的性能。

        1.開啟慢查詢?nèi)罩?/p>

        在配置文件my.cnf或my.ini中在[mysqld]一行下面加入兩個配置參數(shù):  

      log-slow-queries=/data/mysqldata/slow-query.log
      long_query_time=3

        log-slow-queries參數(shù)為慢查詢?nèi)罩敬娣诺奈恢?,一般這個目錄要有mysql的運行帳號的可寫權(quán)限,一般都將這個目錄設置為mysql的數(shù)據(jù)存放目錄;

        long_query_time=5中的5表示查詢超過五秒才記錄;

        還可以在my.cnf或者my.ini中添加log-queries-not-using-indexes參數(shù),表示記錄下沒有使用索引的查詢。

        2. 慢查詢分析

        我們可以通過打開log文件查看得知哪些SQL執(zhí)行效率低下 ,從日志中,可以發(fā)現(xiàn)查詢時間超過5 秒的SQL,而小于5秒的沒有出現(xiàn)在此日志中。

        如果慢查詢?nèi)罩局杏涗泝?nèi)容很多,可以使用mysqldumpslow工具(MySQL客戶端安裝自帶)來對慢查詢?nèi)罩具M行分類匯總。mysqldumpslow對日志文件進行了分類匯總,顯示匯總后摘要結(jié)果。

        進入log的存放目錄,運行:  

      [root@mysql_data]# mysqldumpslow slow-query.log
      Reading mysql slow query log fromslow-query.log
      Count: 2 Time=11.00s (22s) Lock=0.00s (0s)Rows=1.0 (2), root[root]@mysql
      select count(N) from t_user;

        mysqldumpslow命令: 

      /path/mysqldumpslow -s  c -t 顯示SQL條數(shù)  日志保存位置

        這會輸出記錄次數(shù)最多的10條SQL語句,其中:

        -s:是表示按照何種方式排序,c、t、l、r分別是按照記錄次數(shù)、時間、查詢時間、返回的記錄數(shù)來排序,ac、at、al、ar:表示相應的倒敘。

        -t:是top n的意思,即為返回前面多少條的數(shù)據(jù)。

        -g:后邊可以寫一個正則匹配模式,大小寫不敏感的。

        小編來給各位小伙伴舉個栗子:  

      /path/mysqldumpslow -s r -t 10  /database/mysql/slow-log

        得到返回記錄集最多的10個查詢。

        使用mysqldumpslow命令可以非常明確的得到各種我們需要的查詢語句,對MySQL查詢語句的監(jiān)控、分析、優(yōu)化是MySQL優(yōu)化非常重要的一步。開啟慢查詢?nèi)罩竞?,由于日志記錄操作,在一定程度上會占用CPU資源影響mysql的性能,但是可以階段性開啟來定位性能瓶頸。

        二. 結(jié)語

        小編在這里對本文核心要點進行總結(jié):

        慢查詢?nèi)罩臼前l(fā)現(xiàn)系統(tǒng)中查詢慢的SQL語句的有效方式之一,需要熟練運用,慢查詢?nèi)罩灸J是不開啟的,需要各位小伙伴手動開啟。開啟后需要重啟MySQL服務才可以生效。

      聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
      10年以上業(yè)內(nèi)強師集結(jié),手把手帶你蛻變精英
      請您保持通訊暢通,專屬學習老師24小時內(nèi)將與您1V1溝通
      免費領(lǐng)取
      今日已有369人領(lǐng)取成功
      劉同學 138****2860 剛剛成功領(lǐng)取
      王同學 131****2015 剛剛成功領(lǐng)取
      張同學 133****4652 剛剛成功領(lǐng)取
      李同學 135****8607 剛剛成功領(lǐng)取
      楊同學 132****5667 剛剛成功領(lǐng)取
      岳同學 134****6652 剛剛成功領(lǐng)取
      梁同學 157****2950 剛剛成功領(lǐng)取
      劉同學 189****1015 剛剛成功領(lǐng)取
      張同學 155****4678 剛剛成功領(lǐng)取
      鄒同學 139****2907 剛剛成功領(lǐng)取
      董同學 138****2867 剛剛成功領(lǐng)取
      周同學 136****3602 剛剛成功領(lǐng)取
      相關(guān)推薦HOT