最近在项目中需要对已有的部分数据库数据进行备份,通过搜索和实践,把常用的sql以及过程记录如下,

1.常用的备份数据库思路,把需要备份的数据放到一个新表中,这个新表的记录与需要备份的表完全一样,然后备份下来,语句如下:

select * into table_backup_20190606 from table where id in (select id from table where time = '2019-06-05');

  

2.之后再把已备份的数据从旧表中删掉,语句如下:

delete from table where id in (select id from table_backup_20190606 );

 

以上就是备份的基本步骤,之后就是回滚的sql以及过程如下,

1.回滚的思路和备份反过来,先将备份的数据写回到旧表中,因为之前备份表和旧表的结构一模一样,因此直接将备份的数据重新插入到旧表即可,语句如下:

insert into table select * from table_backup_20190606 ;

 

2.之后删除掉备份表即可,语句如下:

drop table if exists table_backup_20190606 ;

  

posted on 2019-06-10 19:58  dbave  阅读(2258)  评论(0编辑  收藏  举报