如何显示在MySQL上执行的最后一个查询?

  • 回答 (2)
  • 关注 (0)
  • 查看 (63)

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

WOW彩笔erWOW彩笔er提问于
Dust资深服务器虚拟化工程师。回答于

编辑你的MySQL配置,例如/etc/mysql/my.cnf - 寻找或者添加一行这样的行

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

重新启动mysql来获取变化,现在你可以

tail -f /var/log/mysql/mysql.log
御姐万岁回答于

对于MySQL> = 5.1.12的用户,可以在运行时全局控制这个选项:

  1. 执行 SET GLOBAL log_output = 'TABLE';
  2. 执行 SET GLOBAL general_log = 'ON';
  3. 看看桌子 mysql.general_log

如果您喜欢输出到文件而不是表格:

  1. SET GLOBAL log_output = "FILE"; 默认。
  2. SET GLOBAL general_log_file = "/path/to/your/logfile.log";
  3. SET GLOBAL general_log = 'ON';

我更喜欢这种方法来编辑.cnf文件,因为:

  1. 你没有编辑my.cnf文件,并可能永久开启日志记录
  2. 你不是在寻找查询日志的文件系统周围钓鱼 - 或者更糟的是,由于需要完美的目的地而分心。 /var/log /var/data/log /opt /home/mysql_savior/va
  3. 重新启动服务器会将您留在您开始的位置(日志默认仍处于关闭状态)
  4. 您不必重新启动服务器并中断当前的连接

扫码关注云+社区

领取腾讯云代金券