国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

MYSQL之“EXPLAIN語句簡介”

來源:懂視網 責編:小采 時間:2020-11-09 08:30:01
文檔

MYSQL之“EXPLAIN語句簡介”

MYSQL之EXPLAIN語句簡介:網站或服務的性能關鍵點很大程度在于數據庫的設計(假設你選擇了合適的語言開發框架)以及如何查詢數據上。 我們知道MySQL的性能優化方法,一般有建立索引、規避復雜聯合查詢、設置冗余字段、建立中間表、查詢緩存等,也知道用EXPLAIN來查看執行計劃。 但對
推薦度:
導讀MYSQL之EXPLAIN語句簡介:網站或服務的性能關鍵點很大程度在于數據庫的設計(假設你選擇了合適的語言開發框架)以及如何查詢數據上。 我們知道MySQL的性能優化方法,一般有建立索引、規避復雜聯合查詢、設置冗余字段、建立中間表、查詢緩存等,也知道用EXPLAIN來查看執行計劃。 但對

網站或服務的性能關鍵點很大程度在于數據庫的設計(假設你選擇了合適的語言開發框架)以及如何查詢數據上。 我們知道MySQL的性能優化方法,一般有建立索引、規避復雜聯合查詢、設置冗余字段、建立中間表、查詢緩存等,也知道用EXPLAIN來查看執行計劃。 但對M

網站或服務的性能關鍵點很大程度在于數據庫的設計(假設你選擇了合適的語言開發框架)以及如何查詢數據上。

我們知道MySQL的性能優化方法,一般有建立索引、規避復雜聯合查詢、設置冗余字段、建立中間表、查詢緩存等,也知道用EXPLAIN來查看執行計劃。

但對MySQL復雜查詢語句執行過程和內部機制,MySQL Optimizer本身所做優化以及查詢語句調整對性能所產生的影響及其原因知之甚少。

本文試圖對其中的一些關鍵概念如執行過程、索引使用等做比較深入的探討,知其然,知其所以然,

這樣可以避免在原本通過MySQL簡單優化就能獲得很好效果的情況下,盲目跟風轉向NoSQL存儲或者投入資金升級基礎設施。


工欲善其事,必先利其器,這里首先介紹MySQL查詢語句性能分析工具。

MySQL的EXPLAIN命令是用來分析查詢性能的工具,EXPLAIN的輸出每一行對應于查詢語句中的一張表的執行計劃說明,其輸出列含義如下表:


上表中type列是表關聯類型,常見的有如下類型(按關聯查詢效率從高到低排列):

[plain] view plaincopy

  1. const(常量連接),比如SELECT * FROM user WHERE id=1;
  2. eq_ref(等值引用),比如SELECT * FROM user,card WHERE user.id=card.userid;
  3. ref(引用),用于非唯一索引,比如SELECT * FROM user,card WHERE user.last_name='test';
  4. range(范圍),比如SELECT * FROM tbl_name WHERE key_column > 10;
  5. index(索引),根據索引來讀取數據,如果索引已包含了查詢數據,只需掃描索引樹,否則執行全表掃描和All類似;
  6. ALL(所有),全表掃描

key列代表索引(index),rows表示估計會掃描多少行記錄,

Extra表示附加信息,常見的有如下幾種(也按查詢效率從高到低排列):

[plain] view plaincopy

  1. Using index:表示使用索引,如果同時出現Using where,代表使用索引來查找讀取記錄,如果沒有Using where,表示索引包含查詢數據,無需額外的查找;
  2. Using where:表示條件查詢,如果type列是ALL或index,而沒有出現該信息,則你有可能在執行錯誤的查詢:返回所有數據;
  3. Using filesort:不是“使用文件索引”的含義!filesort是MySQL所實現的一種排序策略,通常在使用到排序語句ORDER BY的時候,會出現該信息;
  4. Using temporary:表示為了得到結果,使用了臨時表,這通常是出現在多表聯合查詢,結果排序的場合;

如果EXPLAIN出現后面兩個信息(Using filesort,Using temporary),而rows又比較大,通常意味著你需要調整查詢語句,或者需要添加索引,總之需要盡量消除這兩個信息。

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

MYSQL之“EXPLAIN語句簡介”

MYSQL之EXPLAIN語句簡介:網站或服務的性能關鍵點很大程度在于數據庫的設計(假設你選擇了合適的語言開發框架)以及如何查詢數據上。 我們知道MySQL的性能優化方法,一般有建立索引、規避復雜聯合查詢、設置冗余字段、建立中間表、查詢緩存等,也知道用EXPLAIN來查看執行計劃。 但對
推薦度:
標簽: 網站 服務
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 国产精品免费观看视频播放 | 欧美另类精品一区二区三区 | 99国产牛牛视频在线网站 | 91视频一区二区三区 | 国产成人精品视频一区二区不卡 | 国产成人综合久久精品下载 | xxx色| 国产精品三级在线观看 | 久久久国产精品视频 | 亚洲精品99久久久久中文字幕 | 久久精品国产一区二区 | 亚洲视频免费在线观看 | 欧美韩日 | 欧美一区二区三区网站 | 国产精品v一区二区三区 | 中文国产成人精品久久一 | 高清一区二区亚洲欧美日韩 | 久久精品香蕉 | 久久久久久综合成人精品 | 日韩无| 国产欧美在线观看精品一区二区 | 亚洲 欧美 自拍 另类 | 欧美日本道免费一区二区三区 | 国产盗摄精品一区二区三区 | 国产丝袜美女一区二区三区 | 成人无码一区二区片 | 一道精品视频一区二区三区男同 | 国产精选视频在线观看 | 久久99一区 | 久久99精品国产麻豆宅宅 | 日韩在线视频二区 | 日韩精品 电影一区 亚洲高清 | 久久久精品久久久久久久久久久 | 在线观看日韩精品 | 成人免费一级毛片在线播放视频 | 一级毛片私人影院免费 | 日本不卡视频在线观看 | www.亚洲欧美| 亚洲视频欧美视频 | 国产精品视频免费看 | 久久99精品一久久久久久 |