我们可以撤消mysql中的多个更改吗?我删除了一些行,然后选择*来查看表格。我看到了ROLLBACK,但我猜它只会通过上一次查询恢复操作。我可以撤消删除这些行吗?
如果无法撤消多个更改,是否有办法查看上次编辑的表并在查看之前撤消更改?此外,是否提交了最后一个查询之前的更改(即使AUTOCOMMIT为0)?
答案 0 :(得分:0)
参考手册:http://dev.mysql.com/doc/refman/5.1/en/commit.html
默认情况下,MySQL在启用自动提交模式的情况下运行。这意味着 一旦执行更新(修改)表的语句, MySQL将更新存储在磁盘上以使其永久化。
这意味着在删除记录(并显式或隐式提交)后,您无法回滚它们。
对于更改表中数据的内容,回滚是一种撤消操作,但是为了使用它,您必须:
答案 1 :(得分:0)
该问题的解决方案是,请注意您的服务器中已激活二进制日志,如果您的服务器上有二进制日志,则可以使用mysqlbinlog
用它生成一个sql文件之后
mysqlbinlog binary_log_file > query_log.sql
然后找到你丢失的行。如果不是你下次需要备份你的数据库