好的摄影作品网站,苏州做网站的公司排名,内江网站建设,typora wordpress文章目录 一、基础知识1、The Procedure 不完全恢复步骤2、UNTIL TIME Example 基于时间的恢复3、UNTIL SEOUENCE Example 基于序列的恢复4、什么是RMAN的不完全恢复 二、基础操作1、不完全恢复准备工作2、不完全恢复开始恢复 RMAN Incomplete Recovery RMAN的不完全恢复 目标 使用“UNTIL TIME基于时间”执行不完整的数据库恢复使用“UNTIL SEQUENCE基于序列”执行不完整的数据库恢复 一、基础知识
1、The Procedure 不完全恢复步骤
Mount the database为并行化分配多个通道恢复所有数据文件通过使用 UNTIL TIME,UNTIL SEQUENCEUNTIL SCN来恢复数据库使用RESETLOGS打开数据库执行整个数据库备份
2、UNTIL TIME Example 基于时间的恢复
RUN {
ALLOCATE CHANNEL c1 TYPE DISK;
ALLOCATE CHANNEL c2 TYPE DISK;
SET UNTIL TIME 2001-12-09:11:44:00;
RESTORE DATABASE;
RECOVER DATABASE;
ALTER DATABASE OPEN RESETLOGS; }3、UNTIL SEOUENCE Example 基于序列的恢复
RUN {
ALLOCATE CHANNEL c1 TYPE DISK;
ALLOCATE CHANNEL c2 TYPE DISK;
SET UNTIL SEQUENCE 120 THREAD 1;
RESTORE DATABASE;
RECOVER DATABASE;
ALTER DATABASE OPEN RESETLOGS;
}4、什么是RMAN的不完全恢复 RMANRecovery Manager是Oracle数据库备份和恢复的工具。RMAN不完全恢复是指在恢复数据库时无法恢复所有的数据或者只能恢复部分的数据。这种情况通常是由于备份文件或者日志文件损坏、丢失或者不完整以及数据库异常关闭等原因导致的。 在进行RMAN不完全恢复时需要根据具体情况选择合适的恢复策略例如使用已有备份文件、日志文件或者数据库中的数据。同时为了最大程度地保留数据库的完整性和数据一致性需要在恢复过程中进行适当的校验和验证操作。 二、基础操作
1、不完全恢复准备工作
进入sqlplus
创建test测试表空间
create table test(id int, name char(10));插入并查询数据
insert into test values (0, test);
commit;
select * from test;执行检查点并且手动切换日志
alter system checkpoint;
alter system switch logfile;做一个全备 进入RMAN
rman target sys/123orcl nocatalogbackup database format /u01/app/oracle/backup/rman_i_%U;退出RMAN
quit查询时间 进入sqlplus界面
select to_char(sysdate, YYYY-MM-DD:HH24:MI:SS) from dual;可以看到当前时间我们把它拷贝下来备用2023-12-10:20:06:56 这里在生产环境中是需要造成故障的人员告诉DBA大概故障的时间做推断在这里我们只是做个测试所以查询具体时间 删除test表模拟故障
drop table test;2、不完全恢复开始恢复
关闭数据库
shutdown immediate;启动数据库到mount状态
startup mount;再次使用RMAN连接
rman target sys/123orcl nocatalog运行恢复脚本
RUN {
ALLOCATE CHANNEL c1 TYPE DISK;
ALLOCATE CHANNEL c2 TYPE DISK;
ALLOCATE CHANNEL c3 TYPE DISK;
SET UNTIL TIME to_date(2023-12-10:20:06:56,YYYY-MM-DD:HH24:MI:SS);
RESTORE DATABASE;
RECOVER DATABASE;
ALTER DATABASE OPEN RESETLOGS; }可以看到恢复完成并且数据库已经打开了 查询之前我们删除的表是否存在
select * from test;可以看到我们的表和表中的数据已经被找回来了
完结散花哈哈