mysql历史数据恢复

guisense 2017-12-12 03:06:33
目前情况:
环境:是一个可多用户同时操作的一个系统,下面以学生管理系统举例
新建动作:新建了一份学生资料A,版本为01,具体内容分布在db中的多张表里,表中都是学号作为主键,只有一张history表会记录版本变更。
改版动作:在对应的表中改了A中该学生的家庭地址,update操作,由地址1变为了地址2,相应文件A版本升为02,history表中会由原先的一条记录A-01变为两条记录A-01和A-02。
要求: 能让资料A由版本02恢复到版本01,

因为是接手的项目,一开始别人设计的就只是列出版本历史,没有想着能将整份文件恢复到以前的某一个特定版本,所以项目中代码用的数据库相应的增删改操作都已写好,如今大面积修改代码不现实,也不会被允许。

上面只是举例,所以只有一条update语句,实际中会有很多不同表修改,删除,新增等动作。

想请问大家有什么好的办法可以解决目前这种情况?

谢谢。
...全文
178 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjcxc 2017-12-13
  • 打赏
  • 举报
回复
没看明白 如果你说的恢复,是指整体恢复到某一个时间点,那么用数据库的备份+恢复实现 如果你的恢复,仅仅是确定性的恢复,比如你举例的学生资料的恢复,只恢复学生资料及相关表到某个历史版本,但不与之相关的表不恢复,那你只能写代码实现,因为相关性是人为确定的,恢复的需求和具体处理也是人为确定的,只能通过代码按照恢复需求去做具体的实现

56,679

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧