Mystery ghost MySQL插入查询

时间:2014-05-10 19:22:44

标签: php mysql sql

我的MySQL数据库插入了不应该存在的行,特别是在通常不使用的列中存在数据。我认为这样可以很容易地找到哪些PHP脚本插入行,但我搜索了整个站点的所有插入查询,但无法找到哪个php脚本正在运行插入查询。

它也很难复制,因为这个特殊的表有许多crons更新它。

任何人都可以尝试指出我正确的调试方法。是否有一个堆栈轨道,我可以用来确定原始的PHP脚本。因为它很难复制,我花了两天的时间搜索导致插入的代码我可以接受建议。

我通常非常擅长调试,但这个错误就像一个幽灵。

2 个答案:

答案 0 :(得分:1)

我唯一能想到的,如果你查看了所有代码,包括所有旧的cron脚本,就是在该表上放置一个插入触发器,然后用它来查找你的额外行的时间插入。

讨厌的问题!

答案 1 :(得分:0)

这可能是一个可怕的想法,具体取决于您的错误报告设置以及您正在调试的环境类型,但如果您有能力抛出某些错误,我将删除相关列的写入权限并等待看看哪个脚本会抛出错误。如果您幸运,将记录错误的日志/报告,以包含脚本名称和行。