11gR2数据库RMAN完全恢复数据库
创建测试数据
create table test(number id);
declare
a number(2);
begin
for a in 1001 … 20000 loop
insert into test values(a);
end loop;
commit;
end;
/
RMAN备份数据库
破坏数据文件
more redo03.log >example01.dbf
检查数据库告警日志文件
1.1 告警文件日志
show parameter diag;
NAME TYPE VALUE
diagnostic_dest string /u01/app/oracle
cd /u01/app/oracle/diag/rdbms/orcl/orcl/trace
1.2 打开告警日志文件
如果文件太大,使用如下命令:tail -n 10000 alert_orcl.log >1.log
日志文件类似于如下报错:
Starting background process SMCO
Fri May 27 15:40:43 2016
SMCO started with pid=25, OS id=4604
Fri May 27 16:21:33 2016
Hex dump of (file 5, block 154) in trace file /u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_ora_5057.trc
Corrupt block relative dba: 0x0140009a (file 5, block 154)
Bad header found during buffer read
Data in bad block:
type: 1 format: 2 rdba: 0x000009a0
last change scn: 0x8010.00000006 seq: 0xb1 flg: 0x67
spare1: 0x0 spare2: 0x0 spare3: 0x0
consistency value in tail: 0x00000000
check value in block header: 0x100
computed block checksum: 0x0
Reading datafile ‘/diskA/orcl/example01.dbf’ for corruption at rdba: 0x0140009a (file 5, block 154)
Reread (file 5, block 154) found same corrupt data (no logical check)
Fri May 27 16:21:33 2016
使用RMAN验证数据库
通过RMAN命令验证,数据库哪些文件损坏
rman target /
RMAN> validate database;
Starting validate at 27-MAY-16
using channel ORA_DISK_1
RMAN-06169: could not read file header for datafile 5 error reason 7
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of validate command at 05/27/2016 16:25:30
RMAN-06056: could not access datafile 5
使用report schema确定数据文件
RMAN> report schema;
Report of database schema for database with db_unique_name ORCL
List of Permanent Datafiles
===========================
File Size(MB) Tablespace RB segs Datafile Name
1 750 SYSTEM *** /diskA/orcl/system01.dbf
2 540 SYSAUX *** /diskA/orcl/sysaux01.dbf
3 105 UNDOTBS1 *** /diskA/orcl/undotbs01.dbf
4 5 USERS *** /diskA/orcl/users01.dbf
5 0 EXAMPLE *** /diskA/orcl/example01.dbf
List of Temporary Files
=======================
File Size(MB) Tablespace Maxsize(MB) Tempfile Name
1 29 TEMP 32767 /diskA/orcl/temp01.dbf
- 还原中会使用哪些备份文件
使用RESTORE DATABASE PREVIEW;命令,查看restore数据库时,需要使用哪些备份集和归档日志文件。此命令仅仅访问RMAN repository,查询备份元数据,并不会读备份文件,无法确保他们能够被还原。
RMAN> RESTORE DATABASE PREVIEW;
Starting restore at 27-MAY-16
using channel ORA_DISK_1
List of Backup Sets
===================
BS Key Type LV Size Device Type Elapsed Time Completion Time
3 Full 1.10G DISK 00:00:49 27-MAY-16
BP Key: 3 Status: AVaiLABLE Compressed: NO Tag: TAG20160527T153108Piece Name: /diskB/ORCL/backupset/2016_05_27/o1_mf_nnndf_TAG20160527T153108_cnhxxy09_.bkp
List of Datafiles in backup set 3
File LV Type Ckp SCN Ckp Time Name
1 Full 1004896 27-MAY-16 /diskA/orcl/system01.dbf
2 Full 1004896 27-MAY-16 /diskA/orcl/sysaux01.dbf
3 Full 1004896 27-MAY-16 /diskA/orcl/undotbs01.dbf
4 Full 1004896 27-MAY-16 /diskA/orcl/users01.dbf
5 Full 1004896 27-MAY-16 /diskA/orcl/example01.dbf
List of Archived Log Copies for database with db_unique_name ORCL
=================================================================
Key Thrd Seq S Low Time
2 1 7 A 27-MAY-16
Name: /diskB/1_7_912952844.dbf
Media recovery start SCN is 1004896
Recovery must be done beyond SCN 1004896 to clear datafile fuzziness
Finished restore at 27-MAY-16
如上所示,还原会使用备份集3和归档日志文件/diskB/1_7_912952844.dbf
4.验证备份
RMAN> RESTORE DATABASE VALIDATE;
Starting restore at 27-MAY-16
using channel ORA_DISK_1
channel ORA_DISK_1: starting validation of datafile backup set
channel ORA_DISK_1: reading from backup piece /diskB/ORCL/backupset/2016_05_27/o1_mf_nnndf_TAG20160527T153108_cnhxxy09_.bkp
channel ORA_DISK_1: piece handle=/diskB/ORCL/backupset/2016_05_27/o1_mf_nnndf_TAG20160527T153108_cnhxxy09_.bkp tag=TAG20160527T153108
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: validation complete, elapsed time: 00:00:16
Finished restore at 27-MAY-16
RMAN> RESTORE ARCHIVELOG ALL VALIDATE;
Starting restore at 27-MAY-16
using channel ORA_DISK_1
channel ORA_DISK_1: scanning archived log /diskB/1_6_912952844.dbf
channel ORA_DISK_1: scanning archived log /diskB/1_7_912952844.dbf
Finished restore at 27-MAY-16
5.恢复数据库
RMAN>STARTUP MOUNT;
RMAN>RESTORE DATABASE;
RMAN>RECOVER DATABASE;
RMAN>ALTER DATABASE OPEN;
示例
[oracle@node1 trace]$ rman target /
Recovery Manager: Release 11.2.0.4.0 - Production on Fri May 27 17:29:50 2016
Copyright © 1982, 2011, Oracle and/or its affiliates. All rights reserved.
connected to target database (not started)
RMAN> startup mount;
Oracle instance started
database mounted
Total System Global Area 914440192 bytes
Fixed Size 2258600 bytes
Variable Size 583010648 bytes
Database Buffers 322961408 bytes
Redo Buffers 6209536 bytes
RMAN> restore database;
Starting restore at 27-MAY-16
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=18 device type=DISK
channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00001 to /diskA/orcl/system01.dbf
channel ORA_DISK_1: restoring datafile 00002 to /diskA/orcl/sysaux01.dbf
channel ORA_DISK_1: restoring datafile 00003 to /diskA/orcl/undotbs01.dbf
channel ORA_DISK_1: restoring datafile 00004 to /diskA/orcl/users01.dbf
channel ORA_DISK_1: restoring datafile 00005 to /diskA/orcl/example01.dbf
channel ORA_DISK_1: reading from backup piece /diskB/ORCL/backupset/2016_05_27/o1_mf_nnndf_TAG20160527T153108_cnhxxy09_.bkp
channel ORA_DISK_1: piece handle=/diskB/ORCL/backupset/2016_05_27/o1_mf_nnndf_TAG20160527T153108_cnhxxy09_.bkp tag=TAG20160527T153108
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:45
Finished restore at 27-MAY-16
RMAN> recover database;
Starting recover at 27-MAY-16
using channel ORA_DISK_1
starting media recovery
media recovery complete, elapsed time: 00:00:13
Finished recover at 27-MAY-16
RMAN> alter database open;
database opened
附录
validate database正确的输出
Starting validate at 27-MAY-16
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=44 device type=DISK
channel ORA_DISK_1: starting validation of datafile
channel ORA_DISK_1: specifying datafile(s) for validation
input datafile file number=00001 name=/diskA/orcl/system01.dbf
input datafile file number=00002 name=/diskA/orcl/sysaux01.dbf
input datafile file number=00005 name=/diskA/orcl/example01.dbf
input datafile file number=00003 name=/diskA/orcl/undotbs01.dbf
input datafile file number=00004 name=/diskA/orcl/users01.dbf
channel ORA_DISK_1: validation complete, elapsed time: 00:00:36
List of Datafiles
=================
File Status Marked Corrupt Empty Blocks Blocks Examined High SCN
1 OK 0 15342 96074 1006667
File Name: /diskA/orcl/system01.dbf
Block Type Blocks Failing Blocks Processed
Data 0 63486
Index 0 13175
Other 0 3997
File Status Marked Corrupt Empty Blocks Blocks Examined High SCN
2 OK 0 21198 69185 1006615
File Name: /diskA/orcl/sysaux01.dbf
Block Type Blocks Failing Blocks Processed
Data 0 11532
Index 0 8011
Other 0 28379
File Status Marked Corrupt Empty Blocks Blocks Examined High SCN
3 OK 0 870 13440 1006662
File Name: /diskA/orcl/undotbs01.dbf
Block Type Blocks Failing Blocks Processed
Data 0 0
Index 0 0
Other 0 12570
File Status Marked Corrupt Empty Blocks Blocks Examined High SCN
4 OK 0 18 667 952214
File Name: /diskA/orcl/users01.dbf
Block Type Blocks Failing Blocks Processed
Data 0 91
Index 0 39
Other 0 492
File Status Marked Corrupt Empty Blocks Blocks Examined High SCN
5 OK 0 31439 40083 986608
File Name: /diskA/orcl/example01.dbf
Block Type Blocks Failing Blocks Processed
Data 0 4432
Index 0 1159
Other 0 3050
channel ORA_DISK_1: starting validation of datafile
channel ORA_DISK_1: specifying datafile(s) for validation
including current control file for validation
including current SPFILE in backup set
channel ORA_DISK_1: validation complete, elapsed time: 00:00:01
List of Control File and SPFILE
===============================
File Type Status Blocks Failing Blocks Examined
SPFILE OK 0 2
Control File OK 0 594
11gR2数据库RMAN完全恢复数据库相关推荐
- Oracle Study之--Oracle 11gR2通过RMAN克隆数据库
Oracle Study之--Oracle 11gR2通过RMAN克隆数据库 Purpose of Database Duplication A duplicate database is usefu ...
- oracle 完整恢复数据库,oracle完全恢复数据库
完全恢复数据文件 rman target/ list backup summary; 查看是否有备份,如果没有备份,先进行全备份(应该是backup database吧) 现在模拟删除oracle数据 ...
- Oracle 11gR2 使用 RMAN duplicate from active database 复制数据库
在Oracle10g下,我们可以使用RMANduplicate命令创建一个具有不同DBID的复制库.到了Oracle11gR2,RMAN的duplicate有2种方法实现: 1.Activedatab ...
- Oracle 11gR2 使用RMAN Duplicate复制数据库
Oracle 11gR2 使用RMAN Duplicate复制数据库 整体步骤 构建辅助数据库目录结构配置辅助数据库相关参数 安装软件并创建数据库 开启归档 配置静态监听 启动数据库到nomount状 ...
- oracle 进去rman,oracle数据库RMAN使用方法简介 | IT民工 or IT精英
一.配置RMAN 1.配置归档(ARCHIVELOG)模式 数据库在装载(MOUNT)模式下执行下列操作开启归档模式 SQL> ALTER DATABASE ARCHIVELOG; 将数据库置于 ...
- 中小型数据库 RMAN CATALOG 备份恢复方案(一)
对于数据库的稳定性,高可用,跨平台以及海量数据库的处理,Oracle 数据库通常是大型数据库和大企业的首选.尽管如此,仍然不乏很多中小企业想要品尝一下Oracle腥味,因此在Oracle环境中也有不少 ...
- Oracle RMAN CATALOG数据库的配置
RMAN CATALOG数据库的配置 1.catalog database 的功能 1)集中存放rman的资料库(备份的元数据),并且可以和target database 的controlfile同步 ...
- DG环境数据库RMAN备份策略制定
DG环境数据库RMAN备份策略制定: 主库(Primary) 全库备份 归档备份 删除历史文件夹 备库(Standby) 删除归档 引用说明 主库(Primary) $ crontab -l 0 1 ...
- Oracle 11g新特性之 - 使用RMAN复制数据库
Oracle 11g新特性之 - 使用RMAN复制数据库 Oracle 11g新特性之 - 使用RMAN复制数据库 - 1 Oracle 11g新特性之 - 使用RMAN复制数据库 - 2 Oracl ...
- Rman duplicate数据库复制(单系统)
一.实验环境: 1. 虚拟机:VMware Server Console 1.0.7 build-108231 2. 数据库:oracle10g R2 3. 操作系统:windows2003Enter ...
最新文章
- 互联网协议 — L2TP 二层隧道协议
- KDD 2020 开源论文 | 稀疏优化的块分解算法
- C语言90道试题资料
- qt中QListView的用法和QModelIndex的使用
- 【今日CV 视觉论文速览】16 Nov 2018
- ICCV 2019 | 旷视提出MetaPruning:基于元学习和AutoML的模型压缩新方法
- 采购季:云服务不断进化为企业带来更多选择
- CCNP的实验设备注意事项
- php匹配车牌号,分享一个非常全的php正则验证车牌格式的函数
- ThinkPad 鼠标 滚轮左右倾斜切换win10 虚拟桌面
- 微信公众号留言功能开通流程
- 《windows 程序设计》读书笔记 三
- 上海租房。20160420
- 毕业4年,给自己来个了结,^_^
- Docker 学习之 Docker 容器数据卷
- APP在后台被系统回收后,如何重新启动
- 软考下午题第1题——数据流,题目分析与案例解析:
- C/C++程序员学习路线
- 使用ChatGPT工具阅读文献的实战教程
- SEO面试笔试练习题