oracle数据库是db还是dbnms,Oracle数据库中各种类型的文件损坏与修复过程详解(2)...
5.损坏全部联机日志
(1)故障模拟
删除日志文件:rm /u02/oradata/dbnms/*.log
关闭数据库:shutdown immediate;
启动数据库:startup;
Database mounted.
ORA-00313: open failed for members of log group 1 of thread 1
ORA-00312: online log 1 thread 1: '/u02/oradata/dbnms/redo11.log'
ORA-00312: online log 1 thread 1: '/u02/oradata/dbnms/redo21.log'
ORA-00312: online log 1 thread 1: '/u02/oradata/dbnms/redo01.log'
(2)恢复步骤
shutdown immediate;
create pfile from spfile;
cd $ORACLE_HOME/dbs
vi initdbnms.ora
加一个参数:_allow_resetlogs_corruption=true
create spfile from pfile;
startup;
Database mounted.
ORA-00313: open failed for members of log group 1 of thread 1
ORA-00312: online log 1 thread 1: '/u02/oradata/dbnms/redo11.log'
ORA-00312: online log 1 thread 1: '/u02/oradata/dbnms/redo21.log'
ORA-00312: online log 1 thread 1: '/u02/oradata/dbnms/redo01.log'
recover database until cancel;
alter database open resetlogs;
同步catalog:
rman target sys@dbnms catalog rmanuser@cata
reset database;
new incarnation of database registered in recovery catalog
starting full resync of recovery catalog
full resync complete
做一个full备份:
/home/oracle/dbbat/backup_full.sh
恢复成功
6.损坏一个控制文件
(1)故障模拟
删除控制文件:rm /u02/oradata/dbnms/control01.ctl
关闭数据库:shutdown immediate;
ORA-00210: cannot open the specified controlfile
ORA-00202: controlfile: '/u02/oradata/dbnms/control01.ctl'
ORA-27041: unable to open file
Linux Error: 2: No such file or directory
Additional information: 3
(2)恢复步骤
拷贝一个好的控制文件:
cp control02.ctl control01.ctl
shutdown immediate;
startup;
Database mounted.
ORA-01122: database file 1 failed verification check
ORA-01110: data file 1: '/u02/oradata/dbnms/system01.dbf'
ORA-01207: file is more recent than controlfile - old controlfile
rman target sys@dbnms catalog rmanuser@cata
run{
allocate channel c1 type disk;
restore database;
recover database;
sql 'alter database open';
release channel c1;
}
RMAN-00571:===========================================================
RMAN-00569:=============== ERROR MESSAGE STACKFOLLOWS===============
RMAN-00571:===========================================================
RMAN-03009: failure of sql command on default channel at 09/08/2005 17:29:04
RMAN-11003: failure during parse/execution of SQL statement: alter database open
ORA-00322: log 3 of thread 1 is not current copy
ORA-00312: online log 3 thread 1: '/u02/oradata/dbnms/redo03.log'
ORA-00312: online log 3 thread 1: '/u02/oradata/dbnms/redo13.log'
ORA-00312: online log 3 thread 1: '/u02/oradata/dbnms/redo23.log'
alter database clear unarchived logfile group 3;
alter database open;
恢复成功。
7.损坏全部控制文件
(1)故障模拟
删除控制文件:rm /u02/oradata/dbnms/control01.ctl
关闭数据库:shutdown immediate;
ORA-00210: cannot open the specified controlfile
ORA-00202: controlfile: '/u02/oradata/dbnms/control01.ctl'
ORA-27041: unable to open file
Linux Error: 2: No such file or directory
Additional information: 3
(2)恢复步骤
shutdown abort;
startup nomount;
rman target sys catalog rmanuser@cata
run{
allocate channel c1 type disk;
restore controlfile;
restore database;
sql 'alter database mount';
recover database;
sql 'alter database open resetlogs';
release channel c1;
}
RMAN-00571:===========================================================
RMAN-00569:=============== ERROR MESSAGE STACKFOLLOWS===============
RMAN-00571:===========================================================
RMAN-03002: failure of recover command at 09/08/2005 17:43:31
RMAN-06054: media recovery requesting unknown log: thread 1 seq 9 lowscn 670233
alter database open resetlogs;
做一个full备份:
/home/oracle/dbbat/backup_full.sh
恢复成功
8.损坏临时数据文件
(1)故障模拟
删除临时数据文件:rm /u02/oradata/dbnms/temp01.dbf
关闭数据库:shutdown immediate;
启动数据库:startup;
(2)恢复步骤
alter database tempfile '/u02/oradata/dbnms/temp01.dbf' drop;
ERROR at line 1:
ORA-01516: nonexistent log file, datafile, or tempfile
"/u02/oradata/dbnms/temp01.dbf"
alter tablespace temp add tempfile '/u02/oradata/dbnms/temp01.dbf' size 50M autoextend on next 5M maxsize unlimited;
恢复成功
9.损坏spfile参数文件
(1)故障模拟
删除spfile文件:rm $ORACLE_HOME/dbs/spfiledbnms.ora
关闭数据库:shutdown immediate;
启动数据库:startup;
(2)恢复步骤
startup nomount;
rman target sys catalog rmanuser@cata
restore spfile;
shutdown immediate;
startup;
恢复成功
10.损坏全部文件(包括全部数据文件、控制文件、临时数据文件、联机日志文件)
(1)故障模拟
删除全部文件:rm /u02/oradata/dbnms/*
关闭数据库:shutdown immediate;
ORA-03113: end-of-file on communication channel
(2)恢复步骤
sqlplus sys as sysdba
startup nomount;
rman target sys catalog rmanuser@cata
还原控制文件:restore controlfile;
还原数据库:restore database;
mount 数据库:alter database mount;
恢复数据库:recover database;
RMAN-00571:===========================================================
RMAN-00569:=============== ERROR MESSAGE STACKFOLLOWS===============
RMAN-00571:===========================================================
RMAN-03002: failure of recover command at 09/09/2005 10:33:13
RMAN-06054: media recovery requesting unknown log: thread 1 seq 19 lowscn 718284
用resetlogs方式打开数据库:alter database open resetlogs;
database opened
new incarnation of database registered in recovery catalog
starting full resync of recovery catalog
full resync complete
重建临时文件:
sqlplus sys as sysdba
alter database tempfile '/u02/oradata/dbnms/temp01.dbf' drop;
ERROR at line 1:
ORA-01516: nonexistent log file, datafile, or tempfile
"/u02/oradata/dbnms/temp01.dbf"
alter tablespace temp add tempfile '/u02/oradata/dbnms/temp01.dbf' size 50M autoextend on next 5M maxsize unlimited;
执行一次全库备份:/home/oracle/dbbat/backup_full.sh,恢复成功。
关于Oracle数据库损坏文件的修复方法就就介绍到这里了,希望本次的介绍能够带给您一些收获吧!
【编辑推荐】
【责任编辑:赵鹏 TEL:(010)68476606】
oracle数据库是db还是dbnms,Oracle数据库中各种类型的文件损坏与修复过程详解(2)...相关推荐
- mysql数据库存储引擎和索引的描述_Mysql InnoDB引擎的索引与存储结构详解
前言 在Oracle 和SQL Server等数据库中只有一种存储引擎,所有数据存储管理机制都是一样的. 而MySql数据库提供了多种存储引擎.用户可以根据不同的需求为数据表选择不同的存储引擎,用户也 ...
- oracle中取反_oracle正则表达式regexp_like的用法详解
oracle正则表达式regexp_like的用法详解 更新时间:2013年06月13日 17:42:05 作者: 本篇文章是对oracle正则表达式regexp_like的用法进行了详细的分析介 ...
- pg时间戳怎么入oracle库,Oracle与PostgreSQL中Timestamp型公元前、后数值的详解及JDBC存取...
字段:date value1: 2010-01-01 value2: 2010-01-01BC 1.直接向数据库插入数值时: oracle需要使用to_timestamp('2010-01-01',' ...
- kettle 查询数据库写入文件_怎么连接数据库-详解如何用kettle连接mysql数据库并导出sql查询结果...
概述 今天主要介绍下kettle怎么去连接mysql数据库及导出sql查询结果. 1.数据库链接驱动 如果没有安装对应的数据库驱动,在数据库连接的过程中,可能会报某个数据库连接找不到的异常,因此需要下 ...
- android数据库文件是否加密存储,详解Android数据存储之SQLCipher数据库加密
前言: 最近研究了Android Sqlite数据库以及ContentProvider程序间数据共享,我们清晰的知道Sqlite数据库默认存放位置data/data/pakage/database目录 ...
- 关于oracle sql语句查询时表名和字段名要加双引号的问题详解
转自:http://www.2cto.com/database/201504/387184.html 作为oracle的初学者相信大家一定会遇到这个问题,如图: 明明就是navicat可视化创建了表, ...
- mysql查询加伪列_SQL Server数据库中伪列及伪列的含义详解
SQL Server中的伪列 下午看QQ群有人在讨论(非聚集)索引的存储,说,对于聚集索引表,非聚集索引存储的是索引键值+聚集索引键值:对于非聚集索引表,索引存储的是索引键值+RowId,这应该是一个 ...
- Oracle中定时作业(Job)使用方法详解
初次接触到项目需要用定时调度,数据备份任务.所以上网也查阅了很多资料,由此依据自己的学习能力整理下,请大家多补充多支持下. 用Oracle的存储过程,可以让我们在编写程序的时候减少很多的量,利用Ora ...
- media recovery oracle,oracle 数据块损坏 Oracle 数据块损坏与恢复详解
本文主要对RMAN块级别介质恢复进行解释并举例,以帮助大家理解相应概念并灵活使用 块级别介质恢复(Block-Level Media Recovery) 注意: 此恢复无法对数据文件块头(第一个块)进 ...
最新文章
- 跨平台C++开源码的两种经常使用编译方式
- GridControl详解(八)菜单
- PHP实现弹出消息提示框的两种方法
- MySQL 查询数据
- 阿里云开源编程马拉松入围项目
- 对大脑有益的16种食物_对大脑有益的食物有哪些?
- ES索引管理工具curator安装
- [计算机网络] - 调节参数提高 TCP 性能
- 数据库系统原理简答题、论述题、判断题
- java 读取文件的大小_java读取文件大小
- java字符串分割方法
- Android可折叠收缩伸展的Expandable分组RecyclerView:模型抽象和封装(二)
- 怎样通过计算机修改蓝牙音箱,有线音箱怎么改蓝牙无线音箱 有线音箱改无线音箱方法介绍【详解】...
- java集合终极总结
- Google谷歌的未来 野心:2017 Google I/O 大会 全程回顾
- 黑马程序员全套Java教程_Java基础入门视频教程零基础自学Java必备教程视频讲义(5)
- luogu1378 油滴扩展 (深搜)
- 【人脸识别6】用haar+adaboost训练自己的人脸检测器
- 比较IC卡、ID卡、M1卡、CPU卡它们之间有什么区别?
- 膨胀珍珠岩板(EPB) 保温材料英国UKCA 认证-EN 13169
热门文章
- 祛除雀斑的健康方法 - 健康程序员,至尚生活!
- Answer:关于C#连续赋值的面试题
- 《Java入门经典(第7版)》—— 6.11 练习
- JS 之 innerHTML
- 当前不会命中断点 源代码与原始版本不一致
- django 模板里面for循环常用的方法
- Linux下无法进入windows的NTFS分区并挂载错误的问题的解决方法
- centos 添加中文输入法
- Using POI to replace elements in WORD(.docx/.doc)(使用POI替换word中的特定字符/文字)【改进】...
- 一条龙奇迹私服WEB系统后门及bug