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

SQL command to display history of queries

我想在MySQL查询浏览器中显示我执行的SQL命令历史记录。用于显示历史记录的SQL语句是什么?


尝试

1
 cat ~/.mysql_history

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


所有使用mysql>5.1.11的用户

  • 执行set global log_output='table';
  • 执行set global general_log='on';
  • 查看mysql.general_log表
  • 如果要输出到日志文件:

  • 设置全局日志"output="file";
  • set global general_log_file="/path/to/your/logfile.log"
  • 设置全局常规"log='on';
  • 重新启动mysql以应用更改,如果您编辑配置,例如/etc/mysql/my.cnf

    现在,如果你愿意,你可以1〔0〕。

    此处提供更多信息:服务器系统变量


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

    1
     cat ~/.mysql_history

    您将获得所有以前的MySQL查询历史记录享受:)


    你会在那里找到的

    1
    ~/.mysql_history

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

    1
    sed"s/\\\040/ /g" < .mysql_history


    看看~/.myslgui/query-browser/history.xml。您可以在这里找到上次使用mysql_query_browser进行的查询。(几天前)


    您可以查看查询缓存:http://www.databasejournal.com/features/mysql/article.php/3110171/mysqls-query-cache.htm,但它可能无法让您访问实际的查询,如果它起作用的话,将非常受欢迎和错过(有意使用细微的双关语)。

    但是,MySQL查询浏览器很可能在MySQL引擎之外维护自己运行的查询列表。你必须在你的应用程序中做同样的事情。

    编辑:请看dan m的评论:如何显示在mysql上执行的最后一个查询?看起来不错。