資料庫調優教程(三)記錄慢查詢,資料庫調優教程查詢

來源:互聯網
上載者:User

資料庫調優教程(三)記錄慢查詢,資料庫調優教程查詢
一、           發現慢查詢
上一講我們為慢查詢的發生做了資料準備,這一講就讓我們來發現慢查詢,同時把它記錄到檔案中。

3.      記錄慢查詢


此時我們已經有讓慢查詢發生的成本了。執行以下語句,你就知道什麼叫慢!查!詢!

[plain] view plaincopy
  1. select empno from emp where ename='';  


一個很明顯找不到結果的查詢語句居然也執行了近3秒鐘。

這時候,作為DBA就應該把這個sql語句記錄下來,是記在記事本還是寫在筆記本呢?不用想太多了,不用你自己記,Mysql提供了慢查詢日誌功能,自動幫你記錄慢查詢的語句。

1)    把慢查詢的sql記錄到日誌中

首先你要開啟慢查詢記錄檔記錄器

使用

[plain] view plaincopy
  1. show variables like 'slow%';  

你會發現預設情況下慢查詢日誌記錄器關閉的

使用

[plain] view plaincopy
  1. set global slow_query_log=ON;  

開啟之



此時你會發現mysql安裝目錄下的data檔案夾中出現了以你本機名命名的記錄檔


此時再執行慢查詢操作


開啟記錄檔發現出現記錄


以後只需要定期檢查記錄檔就可以找到慢查詢語句了


注意:

在找到慢查詢語句後,要通過反覆使用select語句確認慢查詢,注意只能使用select語句,就算是原來語句為delete或者update等,也要用select代替,因為只有select不會弄髒資料庫


2)    另一種發現慢查詢語句的方法

要是你使用Hibernate進行J2ee開發,可以使用一下方式。

在頁面中進行操作,當發現某個操作的響應較慢時,查看Eclipse控制台的Hibernate輸出sql語句,此語句即為慢查詢語句。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.