触发器是否可以访问在mysql中触发它的查询

时间:2011-11-21 14:03:53

标签: mysql

这是在MySQL 5.0上。

我有一个遗留程序,它发生了奇怪的事情,它将数据库中列的每个值设置为“19”。我们相信,我们已经追踪了大多数可能发生的方式,但实际上有数百个查询,所有这些查询都在线上构建,这可能会改变这种情况。

有些人认为我们被黑了,但代码是如此意外,任何事情都可能发生。

而不是进入每种方法并尝试将其关闭(其中......我没有看到任何明显的事情,这样做,所以我们谈论的日子......)我想知道我是否可以设置触发器以记录在表上运行的查询。通过这种方式,我们可以监控它是如何发生的,并希望找到罪魁祸首。

1 个答案:

答案 0 :(得分:2)

您不能使用触发器来记录查询。

但是,您可以使用MySQL中的日志记录工具来跟踪运行的查询。

通用查询日志看起来对您的目的最有用:
http://dev.mysql.com/doc/refman/5.1/en/query-log.html

该链接将为您提供所需的所有详细信息 请注意,转换常规日志on会大大降低服务器的速度。