由于未知的查询导致数据库发生巨大变化

时间:2013-10-22 12:51:16

标签: php mysql sql apache

我们有一个银行相关的应用程序,我们正面临着这个非常严重的问题。问题是随机数量的事务被更改为不同的状态,例如今天有两个以上的lac事务被更改为Pending以为它们中的大多数已被解析,授权等等。由于我们的应用程序太大,我们无法找到创建查询的问题

所以暂时我想知道我可以以某种方式限制我与数据库的通信,以检查我是否收到太多类似的请求,或者更改是否在数据库表中的条目太多它应该停止执行或停止或者其他的东西?每个可能的解决方案至少可以让这件事再次发生,我们非常感谢。

由于

1 个答案:

答案 0 :(得分:1)

如果您启用了版本控制,我确信它已经存在,我建议您开始回滚一个次要版本点并检查每次提交中与DB相关的更改。

编辑:

如果发生在一组固定的表中,那么暂时(直到您调试生产),您可能希望在数据库用户的特定时间周围撤消对这些表的更新权限。更新正在发生。然后在该窗口通过后再次授予权限。这是一个绝望的情况,这是一个绝望的解决方案。您只能在几天内完成(这是您可以花费最多的时间来调试它而不会影响用户。)

此外,如果修复了发生这种情况的表集,则在这些表上执行代码搜索更新查询,并首先查找sql​​注入漏洞。然后查找格式不正确的更新SQL。