慢查询日志配置
slow_query_log
GLOBAL 级配置,配置是否开启慢查询日志。
-- 查看是否开启慢查询日志 1 开启 0 关闭
SELECT @@GLOBAL.slow_query_log;
+-------------------------+
| @@GLOBAL.slow_query_log |
+-------------------------+
| 1 |
+-------------------------+
-- 配置慢查询日志开启状态
SET @@GLOBAL.slow_query_log = 0
SET @@GLOBAL.slow_query_log = 1
slow_query_log_file
GLOBAL 级配置,配置记录慢查询sql的日志文件。
-- 查看慢查询日志的存储文件
SELECT @@GLOBAL.slow_query_log_file;
+-----------------------------------------+
| @@GLOBAL.slow_query_log_file |
+-----------------------------------------+
| /usr/local/mysql/var/localhost-slow.log |
+-----------------------------------------+
-- 设定慢查询日志的存储文件
SET @@GLOBAL.slow_query_log_file = "/usr/local/mysql/var/mysql-3306-slow.log";
慢查询时间配置
long_query_time
SESSION | GLOBAL 级配置。可以单独的为当前会话设定慢查询sql(秒)的时间的阈值,也可以全局的设定。
当前会话
-- 查看当前会话的慢查询时间
SELECT @@long_query_time;
+-------------------+
| @@long_query_time |
+-------------------+
| 3.000000 |
+-------------------+
-- 配置当前会话的慢查询时间(秒)
SET @@long_query_time = 3;
全局配置
-- 查看当前会话的慢查询时间
SELECT @@GLOBAL.long_query_time;
+-------------------+
| @@long_query_time |
+-------------------+
| 3.000000 |
+-------------------+
-- 配置当前会话的慢查询时间(秒)
SET @@GLOBAL.long_query_time = 3;
慢查询状态统计
Slow_queries
SESSION | GLOBAL 级状态统计,可以统计当前会话或全局慢查询日志的量。
当前会话
SHOW STATUS LIKE 'Slow_queries';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| Slow_queries | 3 |
+---------------+-------+
全局统计
SHOW GLOBAL STATUS LIKE 'Slow_queries';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| Slow_queries | 4 |
+---------------+-------+
配置参数同样可以在 mysql 配置文件中的 [mysqld] 段中全局配置
my.cnf 配置
[mysqld]
slow_query_log = 1
slow_query_log_file = /usr/local/mysql/var/mysql-3306-slow.log
long_query_time = 3
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。