设为首页 加入收藏

TOP

rman数据库恢复;关键/非关键文件、影像副本、控制文件、还原点、非归档、增量、新数据库、灾难性回复(二)
2014-11-23 20:02:19 来源: 作者: 【 】 浏览:111
Tags:rman 数据库 恢复 关键 非关键 文件 影像 副本 控制 原点 归档 增量 灾难性 回复
>CONFIGURE CONTROLFILE AUTOBACKUP ON;

数据库全备份:

RMAN>backup as compressed backupset full database;

删除,参数文件,控制文件,数据文件

rm /opt/oracle/oradata/orcl/control01.ctl

rm /opt/oracle/flash_recovery_area/orcl/control02.ctl

rm /opt/oracle/oradata/orcl/control03.ctl

rm /opt/oracle/product/11.2.2/dbs/spfileorcl.ora

rm /opt/oracle/oradata/orcl/system01.dbf

rm /opt/oracle/oradata/orcl/sysaux01.dbf

rm /opt/oracle/oradata/orcl/undotbs01.dbf

rm /opt/oracle/oradata/orcl/users01.dbf

rm /home/oracle/tbs_ctl01.dbf

rman target /

RMAN> set dbid 1353286769 --如果备份在

startup nomount --虽然没有参数文件但是也可以启动实例

恢复参数文件:

restore spfile from '/data/backup/ctl_c-1353286769-20131102-04.bak';

/* 从快速恢复区恢复参数文件:

run {

restore spfile from autobackup

recovery area = 'flash recovery area destination'

db_name = 'db_name';

}

*/

查看是否有需要改的参数:主要看文件位置

SQL> create pfile from spfile;

恢复控制文件:

restore controlfile to '/opt/oracle/oradata/orcl/control01.ctl' from '/data/backup/ctl_c-1353286769-20131102-04.bak';

恢复数据文件:

RMAN> shutdown immediate

RMAN> startup mount

RMAN> restore database;

RMAN> recover database;

RMAN> alter database open;

RMAN-00571: ===========================================================

RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============

RMAN-00571: ===========================================================

RMAN-03002: failure of alter db command at 11/02/2013 12:10:46

ORA-01589: must use RESETLOGS or NORESETLOGS option for database open

RMAN> alter database open resetlogs;
--------------------------------------------------------------------------------------------------------------
使用增量备份恢复处于 NOARCHIVELOG 模式的数据库:

STARTUP FORCE NOMOUNT;

RESTORE CONTROLFILE;

ALTER DATABASE MOUNT;

RESTORE DATABASE;

RECOVER DATABASE NOREDO;

ALTER DATABASE OPEN RESETLOGS;

8. 使用增量备份恢复处于NOARCHIVELOG 模式的数据库

1) 撤销数据库archivelog模式

SQL>shutdown immediate;

SQL>startup mount;

SQL>alter database noarchivelog;

SQL>alter database open;

SQL>archive log list;

2) 创建测试用表及数据

conn zhuxy/zhuxy

create table c (id number);

insert into c values(1);

commit;

3) 在noarchivelog模式下,0级备份

RMAN> run{

shutdown immediate;

startup mount;

backup as backupset incremental level 0 database;

alter database open;

}

4) 在noarchivelog模式下,1级备份

insert into c values(2);

commit;

RMAN> run{

shutdown immediate;

startup mount;

backup as backupset incremental level 1 database;

alter database open;

}

6) 删除所有日志文件, 某些数据文件

7) 执行恢复

rman target /

RMAN>startup mount;

--执行全库的还原

RMAN> restore database;

-- 使用noredo子句进行恢复

RMAN> recover database noredo;

--恢复完成,resetlogs方式打开数据库,完成所有文件丢失的恢复

RMAN> alter database open resetlogs;

8)验证在测试前(增量备份前)插入的数据

select * from c;

6.非归档丢失文件

不完全恢复: SCN, 时间,还原点,或日志序列号

1确定目标还原点:SCN、时间、还原点或日志序列号。

2设置 NLS 环境变量。

3装载数据库。

4使用 SET UNTIL、RESTORE 和 RECOVER 命令准备并运行 RUN 块。

5用 RESETLOGS 打开数据库。

-----不完全恢复之--基于时间的恢复

1) 准备环境:RMAN全库备份

RMAN> backup as compressed backupset full database;

2) 准备环境:测试表及数据

alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';

create table d (c date);

insert into d values(sysdate);

commit;

create table ff (c date);

insert into ff values(sysdate);

commit;

启动到mount模式,进行基于时间的恢复

shutdown immediate;

startup mount;

run

{sql 'alter session set nls_date_format="yyyy-mm-dd hh24:mi:ss"';

set until time = ' 2014-03-30 0

首页 上一页 1 2 3 下一页 尾页 2/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇【MongoDB】在windows平台下搭建m.. 下一篇基于大规模RDF图的关键字查询

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: