用于显示查询历史的SQL命令

sur*_*.in 96 mysql

我想在我的MYSQL查询浏览器中显示我执行的sql命令历史记录.显示历史记录的sql语句是什么?

May*_*abi 144

尝试

 cat ~/.mysql_history
Run Code Online (Sandbox Code Playgroud)

这将显示在系统上运行的所有mysql命令

  • 这仅显示登录用户执行的命令。 (3认同)
  • 如何在 Windows 中执行此操作 (3认同)
  • 不是*全部*,某些包含“密码”之类的字符串会发生抑制。 (2认同)

GTo*_*rov 26

每个人都使用MySQL> 5.1.11

  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';

如果编辑配置,请重新启动MySQL以应用更改,例如/etc/mysql/my.cnf

现在,如果你愿意,你可以 SET GLOBAL log_output = 'TABLE';

更多信息:服务器系统变量

  • 以上只是一些澄清:此处的copy-paste命令用于MySQL的单个会话,例如,您可以从交互式MySQL命令行输入这些命令。如果希望它们成为MySQL实例的永久功能,则需要将这些命令放在/etc/mysql/my.cnf中,然后重新启动MySQL服务。 (2认同)

Vam*_*lla 21

(Linux)打开终端ctrl+alt+t 运行命令

 cat ~/.mysql_history
Run Code Online (Sandbox Code Playgroud)

你将获得所有以前的mysql查询历史享受:)


Dim*_*Dak 7

你会在那找到它

~/.mysql_history
Run Code Online (Sandbox Code Playgroud)

您将使其可读(不使用转义符),如下所示:

sed "s/\\\040/ /g" < .mysql_history
Run Code Online (Sandbox Code Playgroud)


Kie*_*one -1

您可以查看查询缓存:http://www.databasejournal.com/features/mysql/article.php/3110171/MySQLs-Query-Cache.htm,但它可能无法让您访问实际查询,并且会非常困难。如果它确实有效,就碰碰运气(微妙的双关语)

但 MySQL 查询浏览器很可能在 MySQL 引擎之外维护自己运行的查询列表。您必须在您的应用程序中执行相同的操作。

编辑:请参阅 dan m 的评论导致此问题:How to show the last queryexecute on MySQL? 看起来不错。