执行sql语句如下:
update main set state = 'process'
本来应该是要执行
update main set state = 'process' where id = '8136'
由于忘记了加条件,导致好十万的数据全部状态改错了。有没有办法将之前的数据还原的,之前没有做数据备份的啊?(当然我是测试环境的数据。但是状态不对,也会对业务线有影响的。)
求解。。
执行sql语句如下:
update main set state = 'process'
本来应该是要执行
update main set state = 'process' where id = '8136'
由于忘记了加条件,导致好十万的数据全部状态改错了。有没有办法将之前的数据还原的,之前没有做数据备份的啊?(当然我是测试环境的数据。但是状态不对,也会对业务线有影响的。)
求解。。
恩,出现这种悲剧只能找binlog
这根最后救命稻草了。
所以规范的操作就是:所有INSERT
, UPDATE
, DELETE
操作前都要备份表,不要相信自己的大脑和爪子。
4 回答1.5k 阅读✓ 已解决
8 回答1.3k 阅读
3 回答1.1k 阅读✓ 已解决
3 回答893 阅读✓ 已解决
2 回答1.8k 阅读
2 回答1.6k 阅读
1 回答890 阅读✓ 已解决
update操作是自动commit的,没有办法进行回滚,你只能看看有没有开启binlog,然后去log里面找数据
参考文章:http://database.51cto.com/art/201212/374563.htm