在日常工作之中,有时会出现误删数据、误删表的情况,这时候就需要使用备份进行数据恢复,本文验证了是否能恢复到指定时间点。
(1)开启本地归档
alter database mount;
alter database add archivelog 'dest=/dmarch,type=local,file_size=128,space_limit=1024';
alter database archivelog;
alter database open;
(2)联机备份
backup database backupset '/dmbak/';
(3)制造数据故障
create table test(id int);
insert into test values(1),(2),(3);
commit;
select * from test;
select sysdate;
drop table test;
select sysdate;
(4)指定时间点恢复数据
①根据备份文件进行还原
restore database '/dm8/data/DAMENG_TEST/dm.ini' from backupset '/dmbak/'
②根据本地归档日志,将数据库恢复至截止的时间点
recover database '/dm8/data/DAMENG_TEST/dm.ini' with archivedir '/dmarch' until time '2022-08-04 22:20:12'
③修改db_magic
recover database '/dm8/data/DAMENG_TEST/dm.ini' update db_magic
(5)验证数据是否恢复
select * from test;
达梦社区地址:https://eco.dameng.com