有没有办法用phpmyadmin查看过去的mysql查询?


112

我正在尝试mysql查找删除表中行的错误。

为了我自己的一生,我无法在PHP代码中对其进行跟踪,因此我想通过查找删除行的实际mysql查询来进行回溯。

我登录到phpmyadmin,但是找不到查看过去sql操作历史记录的方法。

有没有办法在phpmyadmin中查看它们?


2
您不能在代码中搜索DELETE语句并进行调试吗?
webbiedave

听baol和webbiedave。您应该启用查询日志记录是为了查看运行情况,但随后您仍然必须查找SQL语句在代码中的位置。开始对“删除”进行grepping操作,项目中就不会有那么多的delete语句。
joeynelson'7

是的,实际上我是从删除删除开始的,但是我的眼睛必须被b / c遮盖住,所有删除操作似乎都不成问题...这就是为什么我希望查询日志会有所帮助。感谢你们俩的帮助。
chris1979

检查数据库中是否也可能执行删除操作的任何触发器
Mark Ba​​ker

Answers:


108

好的,所以我实际上偶然发现了答案。

phpMyAdmin确实提供了简短的历史记录。如果单击“ phpMyAdmin”徽标下面的“ sql”图标,它将打开一个新窗口。在新窗口中,只需单击“历史记录”标签。

这将为您提供最后二十个左右的SQL操作。

在此处输入图片说明


2
您可以配置phpMyadmin保存更多。我有我的设置来保存最近的100000个查询。
Mixologic 2014年

但是...每次更新(例如:加载以前的版本)时,数据库都会丢失历史记录(因此您无法重新安装数据库以检查其历史记录)
JinSnow 2014年

1
不记录索引更改,这对那件事确实有用,因为在执行它们时也不能正确记录它们…
o0'。

56
我看不到此SQL图标,在当前版本中它在哪里?
约瑟夫·阿斯特拉罕

3
@JosephAstrahan单击“ Query windowHome
amallard

63

SQL(查询)屏幕的底部有一个“ 控制台”选项卡。默认情况下,它不会扩展,但是一旦单击它,应该会显示“选项”,“ 历史记录”和“清除” 选项卡。点击历史记录。

所述查询历史长度是从内设置页面相关设置其中发现通过点击在屏幕的右上角的齿轮。

这对于PHP 4.5.1-1版本是正确的


6
长度现在在首页| 设置| SQL查询| 查询历史记录长度。令人发疯的是,“值必须等于或小于25!”
鲍勃·斯坦

38

您只需要在屏幕底部的phpMyAdmin中单击控制台,您将获得Executed历史记录:

在此处输入图片说明


我无法在接受的答案中找到该页面(也许它来自其他版本),这对我有用,谢谢。
felwithe

4
这仅显示由用户phpmyadmin自己运行的查询。它不会显示所有已执行查询的完整记录。
Fusion

12

要查看过去的查询,只需在phpMyAdmin中运行此查询。

SELECT * FROM `general_log`

如果未启用它,请在运行它之前运行以下两个查询。

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

7
非常有用。对其他任何人SELECT * FROM general_log必须在mysql表中查询,否则必须包含表名:SELECT * FROM mysql。general_log
siggi_pop

9

我不认为phpMyAdmin可以做到这一点,但我想听听我错了。

另一方面,您可以在MySQL中启用查询日志记录:常规查询日志



7

我正在使用phpMyAdmin Server版本:5.1.41。

它提供了通过以下方式查看sql历史记录的可能性 phpmyadmin.pma_history表。

您可以在此表中搜索查询。

pma_history 该表具有以下结构:

在此处输入图片说明



2

我可能是错的,但是我相信我已经在phpmyadmin会话的会话文件中看到了以前的SQL查询列表


抱歉...我会误解您的问题:会话中的列表是通过phpmyadmin发布的先前语句的列表,因此它不包含您自己的PHP脚本发布的任何SQL语句,因此可能没有帮助。
马克·贝克

1

好的,所以我知道我来晚了,上面的一些答案很好。

不过,在任何PHPMyAdmin页面中:

  1. 单击SQL选项卡
  2. 点击“获取自动保存的查询”

然后将显示您最后输入的查询。



0

为什么不使用导出,然后单击“自定义-显示所有可能的选项”单选按钮,然后选择数据库,然后转到“输出”并选择“以文本查看输出”,只需向下滚动并转到。瞧!


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.