首頁 資料庫 mysql教程 查看mysql的执行计划_MySQL

查看mysql的执行计划_MySQL

Jun 01, 2016 pm 01:42 PM
mysql 計劃

bitsCN.com
查看mysql的执行计划 这条SQL执行4分钟,message_message有数据1000w,学写了下mysql的执行计划。
  select * from message_message where id in(select message_id
from message_message_tags where messagetag_id=59885) and (category=9 or category=1)
order by  sum(like_count,favorite_count) desc limit 15;          在开发的过程中随着数据量的增大而感受到数据库的性能比较差从而延伸到响应速度慢,
如果是开发人员很多时候估计是处于一种茫然状态,或者直接交给DBA去处理这问题,如果有DBA您很幸运,
但是如果没有DBA的前提下我们怎么去处理这问题,可能唯一的方法就是看执行计划
(也可以直接用explain SQL来分析...):默认情况下Mysql的profiling是关闭的,所以首先必须打开profiling Sql代码  set profiling="ON"  mysql> show variables like "%profi%";  +------------------------+-------+  | Variable_name          | Value |  +------------------------+-------+  | profiling              | ON    |       show processlist;   查看现在在运行的所有进程列表,在进程列表中我们唯一需要的是ID  mysql> show processlist;  +----+------+----------------+-----------+---------+------+-------+-------------  -----+  | Id | User | Host           | db        | Command | Time | State | Info       |  +----+------+----------------+-----------+---------+------+-------+-------------  -----+  |  3 | root | localhost:2196 | click_log | Query   |    0 | NULL  | show process  list |  +----+------+----------------+-----------+---------+------+-------+-------------  mysql> show profile cpu,memory for query 3;  +--------------------+------------+----------+------------+  | Status             | Duration   | CPU_user | CPU_system |  +--------------------+------------+----------+------------+  | freeing items      | 0.00001375 |     NULL |       NULL |  | logging slow query | 0.00001375 |     NULL |       NULL |  | cleaning up        | 0.00000050 |     NULL |       NULL |  +--------------------+------------+----------+------------+    SHOW PROFILES Syntax:  SHOW PROFILE [type [, type] ... ]      [FOR QUERY n]         [LIMIT row_count [OFFSET offset]]  type:      ALL    | BLOCK IO    | CONTEXT SWITCHES    | CPU    | IPC    | MEMORY    | PAGE FAULTS    | SOURCE    | SWAPS     作者 san_yun bitsCN.com

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章

倉庫:如何復興隊友
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章

倉庫:如何復興隊友
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章標籤

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

PHP 的大數據結構處理技巧 PHP 的大數據結構處理技巧 May 08, 2024 am 10:24 AM

PHP 的大數據結構處理技巧

如何優化 PHP 中的 MySQL 查詢效能? 如何優化 PHP 中的 MySQL 查詢效能? Jun 03, 2024 pm 08:11 PM

如何優化 PHP 中的 MySQL 查詢效能?

如何在 PHP 中使用 MySQL 備份和還原? 如何在 PHP 中使用 MySQL 備份和還原? Jun 03, 2024 pm 12:19 PM

如何在 PHP 中使用 MySQL 備份和還原?

Java 枚舉類型在資料庫中的應用場景有哪些? Java 枚舉類型在資料庫中的應用場景有哪些? May 05, 2024 am 09:06 AM

Java 枚舉類型在資料庫中的應用場景有哪些?

如何使用 PHP 插入資料到 MySQL 表? 如何使用 PHP 插入資料到 MySQL 表? Jun 02, 2024 pm 02:26 PM

如何使用 PHP 插入資料到 MySQL 表?

如何修復 MySQL 8.4 上的 mysql_native_password 未載入錯誤 如何修復 MySQL 8.4 上的 mysql_native_password 未載入錯誤 Dec 09, 2024 am 11:42 AM

如何修復 MySQL 8.4 上的 mysql_native_password 未載入錯誤

如何在 PHP 中使用 MySQL 預存程序? 如何在 PHP 中使用 MySQL 預存程序? Jun 02, 2024 pm 02:13 PM

如何在 PHP 中使用 MySQL 預存程序?

如何使用 PHP 建立 MySQL 表? 如何使用 PHP 建立 MySQL 表? Jun 04, 2024 pm 01:57 PM

如何使用 PHP 建立 MySQL 表?

See all articles