1.源端开启归档
alter database mount;
alter database ARCHIVELOG;
alter database ADD ARCHIVELOG 'type=local, dest=/dm8/arch, file_size=64,space_limit=10240';
alter database open;
验证:
SQL> select ARCH_NAME,ARCH_TYPE,ARCH_DEST,ARCH_FILE_SIZE,ARCH_SPACE_LIMIT,ARCH_IS_VALID from v$dm_arch_ini;
2.源端联机备份
SQL> backup database backupset '/dm8/dmbak';
3.创建测试数据
SQL> CREATE TABLE TEST1(C1 INT,C2 NUMBER, C3 VARCHAR(20) ,SRC_TIME DATE DEFAULT SYSDATE, primary key (c1));
begin
for i in 1..100000
loop
INSERT INTO TEST1(C1,C2,C3) VALUES(i, 123.24,'GOOD');
IF mod(i,1000) = 0 THEN
Commit;
End if;
end loop;
commit;
end;
/
SQL> SELECT COUNT(*) FROM TEST1;
4.制造数据故障
SQL> select sysdate;
SQL> drop table TEST1;
5.拷贝备份到目标机器
[dmdba@dm8 arch]$ scp -r /dm8/dmbak/* 192.168.1.95:/dm8/dmbak/
6. 拷贝归档到目标机器
[dmdba@dm8 arch]$ scp -r /dm8/arch/* 192.168.1.95:/dm8/arch/
7. 指定时间点恢复数据
使用脱机还原数据库,先关闭数据实例。
[dmdba@dm8 bin]$ ./dmrman
RMAN> restore database '/dm8/data/DAMENG/dm.ini' from backupset '/dm8/dmbak';
RMAN> recover database '/dm8/data/DAMENG/dm.ini' with archivedir '/dm8/arch' until time '2022-07-13 22:57:12';
RMAN> recover database '/dm8/data/DAMENG/dm.ini' update db_magic;
8.启动数据库验证数据
[dmdba@dm8 bin]$ ./DmServiceDMSERVER start
SQL> select count(*) from test1;
达梦数据库 - 新一代大型通用关系型数据库 | 达梦在线服务平台