我有一个PHP应用程序,它位于生产服务器上,它意味着将用户注册到某些服务。它有两种形式,用于将用户注册到与我的数据库不同的表中。
问题是,今天其中一个表格消失了,我可以从备份中恢复它。但是这个剂量没有解决问题。
如何调查此问题以确定该表如何丢失并且很可能被某些机器人或其他东西丢弃。
你会如何处理这样的情况?
答案 0 :(得分:0)
有两种方法:
拥有系统的工作备份,并从中恢复文件。 如果您最近删除了数据库(理想情况下,如果您之后立即拔下了计算机),则取消删除工具可能会有所帮助。 至于使用MySQL,虽然...在我知道的所有系统上,不。 MySQL表是服务器数据目录中的文件,删除表会删除这些文件。一旦它们消失,它们就会消失,只有上述方法才能让它们恢复原状。数据库是这些文件的目录,删除它会删除整个目录。
查看此免费软件
http://www.majorgeeks.com/Restoration_d4474.html
此处提供更多信息 - http://emaillenin.blogspot.com/2010/11/recover-accidentally-deleted-mysql.html
答案 1 :(得分:0)
如果您的表被删除,请找出哪些mysql用户有权删除表(不应该有很多)以及哪些服务使用该用户凭据登录。 也许你有一个带有php后端的web表单,它不会清理(转义)输入,所以你可能对sql注入开放。 在这种情况下,您可以检查您的Web服务器访问日志。