是否有任何查询/方法显示在所有服务器上执行的最后查询?


当前回答

也许您可以通过查看查询日志来找到这一点。

其他回答

SELECT * FROM  mysql.general_log  WHERE command_type ='Query' LIMIT total;

您可以为这种诊断启用一般查询日志。但是,通常不会在生产服务器上记录所有SELECT查询,这是性能杀手。

编辑你的MySQL配置,例如/etc/mysql/my.cnf -查找或添加如下一行

[mysqld]
log = /var/log/mysql/mysql.log

重新启动mysql以获取该更改,现在就可以了

tail -f /var/log/mysql/mysql.log

嘿,马上,你就可以看到输入的查询了。

也许您可以通过查看查询日志来找到这一点。

1)如果通用mysql日志是启用的,那么我们可以根据我们在配置中提到的,检查日志文件或表中的查询。 使用以下命令检查启用了什么

mysql> show variables like 'general_log%';
mysql> show variables like 'log_output%';

如果我们需要在表中查询历史,那么

Execute SET GLOBAL log_output = 'TABLE';
Execute SET GLOBAL general_log = 'ON';

看一下mysql.general_log表

如果你想输出到一个文件:

SET GLOBAL log_output = "FILE"; which is set by default.
SET GLOBAL general_log_file = "/path/to/your/logfile.log";
SET GLOBAL general_log = 'ON';

2)我们还可以检查.mysql_history文件中的查询 猫~ / .mysql_history

您可以在linux中查看以下内容

cd /root

ls -al

vi .mysql_history可能有帮助