这是在MySQL 5.0上。
我有一个遗留程序,它发生了奇怪的事情,它将数据库中列的每个值设置为“19”。我们相信,我们已经追踪了大多数可能发生的方式,但实际上有数百个查询,所有这些查询都在线上构建,这可能会改变这种情况。
有些人认为我们被黑了,但代码是如此意外,任何事情都可能发生。
而不是进入每种方法并尝试将其关闭(其中......我没有看到任何明显的事情,这样做,所以我们谈论的日子......)我想知道我是否可以设置触发器以记录在表上运行的查询。通过这种方式,我们可以监控它是如何发生的,并希望找到罪魁祸首。
答案 0 :(得分:2)
您不能使用触发器来记录查询。
但是,您可以使用MySQL中的日志记录工具来跟踪运行的查询。
通用查询日志看起来对您的目的最有用:
http://dev.mysql.com/doc/refman/5.1/en/query-log.html
该链接将为您提供所需的所有详细信息
请注意,转换常规日志on
会大大降低服务器的速度。