91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在mysql數據庫中開啟慢查詢

發布時間:2021-01-30 15:53:07 來源:億速云 閱讀:511 作者:Leah 欄目:MySQL數據庫

如何在mysql數據庫中開啟慢查詢?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

1、開啟慢查詢

1> 查看慢查詢是否開啟

show variables like "%quer%";
slow_query_log = ON #已開啟

2> 開啟方法:my.cnf目錄配置

slow_query_log=on #是否開啟
slow_query_log_file=/opt/MySQL_Data/TEST1-slow.log #慢查詢文件位置
long_query_time=2 #查詢超過多少秒才記錄

2、EXPLAIN慢查詢日志里出現的SELECT查詢

idselect_typetablepartitionstypepossible_keyskeykey_lenrefrowsfilteredExtra
1SIMPLEuserNULLrefuseruser768const1100.00NULL

explain列的解釋

  • table:顯示這一行的數據是關于哪張表的

  • type:這是重要的列,顯示連接使用了何種類型。從最好到最差的連接類型為const、eq_reg、ref、range、index、all

  • possible_keys:顯示可能應用在這張表中的索引。如果為空,沒有可能的索引。可以為相關的域從where語句中選擇一個合適的語句

  • key: 實際使用的索引。如果為null,則沒有使用索引。很少的情況下,mysql會選擇優化不足的索引。這種情況下,可以在select語句中使用use index(indexname)來強制使用一個索引或者用ignore index(indexname)來強制mysql忽略索引

  • key_len:使用的索引的長度。在不損失精確性的情況下,長度越短越好

  • ref:顯示索引的哪一列被使用了,如果可能的話,是一個常數

  • rows:mysql認為必須檢查的用來返回請求數據的行數

  • extra:關于mysql如何解析查詢的額外信息。例子:using temporary和using filesort,意思mysql根本不能使用索引,結果是檢索會很慢

key_len的計算

  1. 所有的索引字段,如果沒有設置not null,則需要加一個字節。

  2. 定長字段,int占四個字節、date占三個字節、char(n)占n個字符。

  3. 對于變成字段varchar(n),則有n個字符+兩個字節。

  4. 不同的字符集,一個字符占用的字節數不同。latin1編碼的,一個字符占用一個字節,gbk編碼的,一個字符占用兩個字節,utf8編碼的,一個字符占用三個字節。

3、建索引的幾大原則

  • 最左前綴匹配原則,非常重要的原則,mysql會一直向右匹配直到遇到范圍查詢(>、<、between、like)就停止匹配,比如a = 1 and b = 2 and c > 3 and d = 4 如果建立(a,b,c,d)順序的索引,d是用不到索引的,如果建立(a,b,d,c)的索引則都可以用到,a,b,d的順序可以任意調整。

  • =和in可以亂序,比如a = 1 and b = 2 and c = 3 建立(a,b,c)索引可以任意順序,mysql的查詢優化器會幫你優化成索引可以識別的形式。

  • 盡量選擇區分度高的列作為索引,區分度的公式是count(distinct column)/count(*),表示字段不重復的比例,比例越大我們掃描的記錄數越少,唯一鍵的區分度是1,而一些狀態、性別字段可能在大數據面前區分度就是0,那可能有人會問,這個比例有什么經驗值嗎?使用場景不同,這個值也很難確定,一般需要join的字段我們都要求是0.1以上,即平均1條掃描10條記錄。

  • 索引列不能參與計算和函數的使用,保持列干凈。

  • 盡量的擴展索引,不要新建索引。比如表中已經有a的索引,現在要加(a,b)的索引,那么只需要修改原來的索引即可。

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

临沧市| 丰原市| 涿州市| 新竹县| 蚌埠市| 兰坪| 镇平县| 天全县| 扶风县| 凤翔县| 柳江县| 胶州市| 保德县| 宜昌市| 蒙城县| 赤城县| 广南县| 曲阳县| 娄烦县| 香河县| 临泉县| 封开县| 海原县| 塘沽区| 望都县| 大城县| 永宁县| 贵阳市| 滕州市| 昆山市| 勃利县| 高平市| 乳源| 延长县| 石棉县| 鄂托克前旗| 泾源县| 天等县| 隆化县| 年辖:市辖区| 威远县|