MySQL查看SQL执行历史是指跟踪和记录MySQL数据库中执行的SQL语句,以便进行性能分析、故障排查或审计等操作。
SET GLOBAL slow_query_log = 'ON';
SET GLOBAL long_query_time = 2; -- 设置慢查询阈值为2秒
tail -f /var/log/mysql/slow-query.log
SET GLOBAL general_log = 'ON';
SET GLOBAL general_log_file = '/var/log/mysql/general-query.log';
tail -f /var/log/mysql/general-query.log
SET GLOBAL log_bin = 'ON';
mysqlbinlog /var/log/mysql/binlog.000001
原因:可能是配置文件未正确设置或权限问题。
解决方法:
my.cnf
或my.ini
),确保以下配置正确:[mysqld]
slow_query_log = ON
slow_query_log_file = /var/log/mysql/slow-query.log
long_query_time = 2
chown mysql:mysql /var/log/mysql/slow-query.log
chmod 644 /var/log/mysql/slow-query.log
原因:通用查询日志记录所有SQL语句,可能导致日志文件迅速增大。
解决方法:
通过以上方法,你可以有效地查看和分析MySQL的SQL执行历史,从而优化数据库性能和保障数据安全。
领取专属 10元无门槛券
手把手带您无忧上云