淺談MySQL的Profiler工具

來源:互聯網
上載者:User

在大資料量的應用中,常常需要對資料庫配置和SQL語句進行最佳化,以保證應用在負載大資料量時的並發性。MySQL內建有分析器Profiler,通過Profiler,開發人員能夠方便快速的瞭解MySQL大概的效能。

使用Profiler非常簡單,只需設定系統變數“profiling = on”或“profiling = 1”,預設情況下,Profiler是關閉的,可以通過命令“SELECT @@profiling;”或“SHOW variables LIKE ‘%profiling%’;”查看Profiler狀態。:

執行命令“SET profiling = on;”或“SET profiling = 1;”後,就能使用Profiler了。

例如:假設現在有一個資料庫demo,demo裡有一個資料表tab_demo,其結構:

通過命令“SELECT * FROM tab_demo;”查詢表中所有記錄,返回結果:

下面使用Profiler查看以上資料庫操作的具體情況。運行命令“SHOW profiles;”,返回每次操作花費時間,:

為了更清楚的查看每次操作資料庫具體做了哪些事情,例如:想要查看第4次Query操作的具體流程,可以通過命令“SHOW profile FOR query 4;”,返回結果:

可以清晰的看到執行一條SQL語句的具體流程,包括:初始化,開啟表,鎖定表等。這樣就能大概瞭解在哪一步花費時間較多,從而可以針對性的對資料庫或SQL語句進行最佳化。

總的來說,在進行資料庫效能分析時,Profiler可以作為一種簡單快速的分析工具,先通過它大概的擷取一些資訊,再配合其它專門的效能分析工具,可以取得很好的效果。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.