程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL慢查詢之開啟慢查詢

MySQL慢查詢之開啟慢查詢

編輯:MySQL綜合教程

MySQL慢查詢之開啟慢查詢。本站提示廣大學習愛好者:(MySQL慢查詢之開啟慢查詢)文章只能為提供參考,不一定能成為您想要的結果。以下是MySQL慢查詢之開啟慢查詢正文


一、慢查詢有什麼用?

它能記錄下所有執行超過long_query_time時間的SQL語句, 幫你找到執行慢的SQL, 方便我們對這些SQL進行優化.

二、參數說明

slow_query_log 慢查詢開啟狀態

slow_query_log_file 慢查詢日志存放的位置(這個目錄需要MySQL的運行帳號的可寫權限,一般設置為MySQL的數據存放目錄)

long_query_time 查詢超過多少秒才記錄

三、設置步驟

1、查看慢查詢相關參數

mysql> show variables like 'slow_query%';
+---------------------------+----------------------------------+
| Variable_name  | Value    |
+---------------------------+----------------------------------+
| slow_query_log  | OFF    |
| slow_query_log_file | /mysql/data/localhost-slow.log |
+---------------------------+----------------------------------+

mysql> show variables like 'long_query_time';
+-----------------+-----------+
| Variable_name | Value |
+-----------------+-----------+
| long_query_time | 10.000000 |
+-----------------+-----------+

2、設置方法

方法一:全局變量設置

slow_query_log 全局變量設置為“ON”狀態

mysql> set global slow_query_log='ON'; 

設置慢查詢日志存放的位置

mysql> set global slow_query_log_file='/usr/local/mysql/data/slow.log';

查詢超過1秒就記錄

mysql> set global long_query_time=1;

方法二:配置文件設置

修改配置文件my.cnf,在[mysqld]下的下方加入

[mysqld]
slow_query_log = ON
slow_query_log_file = /usr/local/mysql/data/slow.log
long_query_time = 1

3、重啟MySQL服務

service mysqld restart

4、查看設置後的參數

mysql> show variables like 'slow_query%';
+---------------------+--------------------------------+
| Variable_name | Value    |
+---------------------+--------------------------------+
| slow_query_log | ON    |
| slow_query_log_file | /usr/local/mysql/data/slow.log |
+---------------------+--------------------------------+

mysql> show variables like 'long_query_time';
+-----------------+----------+
| Variable_name | Value |
+-----------------+----------+
| long_query_time | 1.000000 |
+-----------------+----------+

四、測試

1、執行一條慢查詢SQL語句

mysql> select sleep(2);

2、查看是否生成慢查詢日志

ls /usr/local/mysql/data/slow.log

如果日志存在,MySQL開啟慢查詢設置成功!

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對的支持。

[db:作者簡介][db:原文翻譯及解析]
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved