目录
[步骤 1: 找到配置文件](#步骤 1: 找到配置文件)
[步骤 2: 编辑配置文件](#步骤 2: 编辑配置文件)
[步骤 3: 添加慢查询日志设置](#步骤 3: 添加慢查询日志设置)
[步骤 4: 重启 MySQL 服务](#步骤 4: 重启 MySQL 服务)
[步骤 5: 检查慢查询日志](#步骤 5: 检查慢查询日志)
[步骤 6: 验证设置](#步骤 6: 验证设置)
步骤 1: 找到配置文件
首先确认你的 MySQL 配置文件的位置。你可以使用 **grep
**命令来搜索相关配置文件的位置,例如:
grep -rl "slow_query_log" /etc/mysql/
这将列出所有包含 "slow_query_log" 关键词的配置文件。
如果上述命令没有返回结果,你可以直接编辑
/etc/mysql/mysql.conf.d/mysqld.cnf
或/etc/mysql/my.cnf
。
步骤 2: 编辑配置文件
使用文本编辑器打开配置文件。这里我们以 /etc/mysql/mysql.conf.d/mysqld.cnf
为例:
bash
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
步骤 3: 添加慢查询日志设置
在 [mysqld]
部分添加以下行:
bash
slow_query_log = 1
slow_query_log_file = /var/log/mysql/mysql-slow.log
long_query_time = 2
log_queries_not_using_indexes = 1
slow_query_log = 1
启用慢查询日志功能。slow_query_log_file
设置慢查询日志文件的位置。long_query_time
设置慢查询的阈值(秒)。默认是 10 秒,这里设为 2 秒。log_queries_not_using_indexes = 1
记录不使用索引的查询。
步骤 4: 重启 MySQL 服务
保存并关闭配置文件后,你需要重启 MySQL 服务使更改生效:
bash
sudo systemctl restart mysql
步骤 5: 检查慢查询日志
重启服务后,你可以通过查看日志文件来验证慢查询日志是否已经被记录:
bash
tail -n 100 /var/log/mysql/mysql-slow.log
这将显示慢查询日志文件中的最后 100 行。
步骤 6: 验证设置
你还可以登录到 MySQL 并执行以下命令来验证慢查询日志设置是否正确:
bash
SHOW VARIABLES LIKE 'slow_query_log';
SHOW VARIABLES LIKE 'slow_query_log_file';
SHOW VARIABLES LIKE 'long_query_time';
SHOW VARIABLES LIKE 'log_queries_not_using_indexes';
这将显示慢查询日志的相关设置。
完成以上步骤后,你的 MySQL 服务器就应该开始记录慢查询了。