Oracle备份恢复之断电导致控制文件和日志文件损坏修复
Oracle数据库遭遇断电遭遇ora-00214、ora-00314、ora-00312错误恢复案例一枚
1、数据库在17日21:19启动开始报错ora-214错误:
Tue Jan 17 21:19:10 2017
alter database mount exclusive
Tue Jan 17 21:19:13 2017
ORA-214 signalled during: alter database mount exclusive...
Dump file d:\oracle\product\10.2.0\admin\orcl\bdump\alert_orcl.log
2、从控制文件看目前controlfile文件信息如下:
control_files = D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL01.CTL, D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL02.CTL, D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL03.CTL
3、从sqlplus界面看到CONTROL01.CTL的版本号低于CONTROL02.CTL版本号,根据规则、保留高版本CONTROL文件原则尝试重新启动数据库:
修改参数文件中控制文件信息如下:
control_files = D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL02.CTL, D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL03.CTL
尝试重新启动数据库,成功进入mount状态。
Fri Apr 14 10:28:33 2017
ALTER DATABASE MOUNT
MMNL started with pid=12, OS id=4396
Fri Apr 14 10:28:37 2017
Setting recovery target incarnation to 2
Fri Apr 14 10:28:37 2017
Successful mount of redo thread 1, with mount id 1469023441
Fri Apr 14 10:28:37 2017
Database mounted in Exclusive Mode
Completed: ALTER DATABASE MOUNT
4、继续open数据库,发现报错如下:
Fri Apr 14 10:28:37 2017
ALTER DATABASE OPEN
Fri Apr 14 10:28:38 2017
Errors in file d:\oracle\product\10.2.0\admin\orcl\bdump\orcl_lgwr_5244.trc:
ORA-00314: log 1 of thread 1, expected sequence# 76 doesn't match 79
ORA-00312: online log 1 thread 1: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01.LOG'
Fri Apr 14 10:28:38 2017
Errors in file d:\oracle\product\10.2.0\admin\orcl\bdump\orcl_lgwr_5244.trc:
ORA-00314: log 1 of thread 1, expected sequence# 76 doesn't match 79
ORA-00312: online log 1 thread 1: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01.LOG'
警告日志报错D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01.LOG日志文件损坏。
5、清空日志组1,成功open数据库:
Fri Apr 14 10:48:48 2017
alter database clear logfile group 1
Fri Apr 14 10:48:48 2017
Clearing online log 1 of thread 1 sequence number 76
Completed: alter database clear logfile group 1
Fri Apr 14 10:49:00 2017
alter database open
Fri Apr 14 10:49:01 2017
Thread 1 advanced to log sequence 79 (thread open)
Thread 1 opened at log sequence 79
Current log# 1 seq# 79 mem# 0: D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01.LOG
Successful open of redo thread 1
Fri Apr 14 10:49:01 2017
MTTR advisory is disabled because FAST_START_MTTR_TARGET is not set
Fri Apr 14 10:49:01 2017
SMON: enabling cache recovery
Fri Apr 14 10:49:02 2017
Successfully onlined Undo Tablespace 1.
Fri Apr 14 10:49:02 2017
SMON: enabling tx recovery
Fri Apr 14 10:49:03 2017
Database Characterset is ZHS16GBK
Opening with internal Resource Manager plan
where NUMA PG = 1, CPUs = 4
replication_dependency_tracking turned off (no async multimaster replication found)
Starting background process QMNC
QMNC started with pid=16, OS id=4728
Fri Apr 14 10:49:08 2017
Completed: alter database open
故障恢复完成。
Oracle备份恢复之断电导致控制文件和日志文件损坏修复的更多相关文章
- ORACLE体系结构一 (物理结构)- 数据文件、日志文件、控制文件和参数文件
一.物理结构Oracle物理结构包含了数据文件.日志文件.控制文件和参数文件 1.数据文件每一个ORACLE数据库有一个或多个物理的数据文件(data file).一个数据库的数据文件包含全部数据库数 ...
- [转帖]oracle备份恢复之recover database的四条语句区别
oracle备份恢复之recover database的四条语句区别 https://www.cnblogs.com/andy6/p/5925433.html 需要学习一下. 1 recover d ...
- ORACLE 移动数据文件 控制文件 重做日志文件
ORACLE数据库有时候需要对存储进行调整,增加分区.IO调优等等,此时需要移动数据文件.重做日志文件.控制文件等等,下文结合例子总结一下这方面的知识点. 进行数据文件.重做日志文件.控制文件的迁移前 ...
- 批量迁移Oracle数据文件,日志文件及控制文件
有些时候需要将Oracle的多个数据文件以及日志文件重定位或者迁移到新的分区或新的位置,比如磁盘空间不足,或因为特殊需求.对于这种情形可以采取批量迁移的方式将多个数据文件或者日志文件实现一次性迁移.当 ...
- Oracle备份恢复之热备份恢复及异机恢复
原理: 数据库必须运行在归档模式下,否则备份没有意义.备份前冻结块头,使scn号不变化,然后cp物理文件,最后解冻块头.此过程dml语句可以正常执行,动作被写在日志文件里面,当解冻scn号后,日志文件 ...
- 数据文件、日志文件、归档文件、控制文件、参数文件及RMAN备份数据库信息查询
一.查看数据库信息:=====================1.数据文件 SQL> SELECT FILE#,STATUS,ENABLED,NAME FROM V$DATAFILE; FILE ...
- Oracle 物理结构(七) 文件-归档日志文件
Oracle 物理结构(七) 文件-归档日志文件
- Oracle_管理控制文件和日志文件
控制文件: 控制文件在数据库创建时被自动创建,并在数据库发生物理变化时更新.控制文件被不断更新,并且在任何时候都要保证控制文件是可用的.只有Oracle进程才能安全地更新控制文件的内容,所以,任何时候 ...
- rabbitmq更换数据文件和日志文件的存放位置
原来的默认位置是/var下 需要将这些文件更换位置 1.先创建数据文件和日志文件存放位置的目录并给权限 mkdir -p /usr/local/rabbitmq/mnesia mkdir -p /us ...
随机推荐
- Log4net用法(.config文件)
1.引用log4net.dll 2.在AssemblyInfo.cs中添加初始化: [assembly: log4net.Config.XmlConfigurator(ConfigFile = &qu ...
- Go之对象拷贝
这里interface{}就相当于c#,java中的object, boy := util.Boy{util.Person{"Eric", 19, "boy"} ...
- vuejs监听苹果iphone手机键盘事件
在iphone手机中,vue提供的keyup事件是不能监听iphone键盘的,但是h5提供的input事件可以做到. 只需要向下面这样处理,就可以解决iphone不响应键盘事件的bug <tem ...
- UTF8 & GBK之间的转换
使用lua的时候,在lua中给字符串赋值的中文,但是在C中读出来的就是乱码,是因为在lua中使用的是UTF8编码,而在C(windows下面)中使用的是GBK编码,将UTF8转成GBK就可以了,下面的 ...
- mysql报错“Starting MySQL...The server quit without updating PID file”处理
http://blog.csdn.net/lzq123_1/article/details/51354179 注意:要将/usr/bin/mysql_install_db替换成 /usr/bin/my ...
- 【转】使程序在Linux下后台运行 (关掉终端继续让程序运行的方法)
一.为什么要使程序在后台执行 我们计算的程序都是周期很长的,通常要几个小时甚至一个星期.我们用的环境是用putty远程连接到日本Linux服务器.所以使程序在后台跑有以下三个好处: 1:我们这边是否关 ...
- yii 前端js动态添加验证规则
在使用 activeForm 生成表单及验证时,默认是按照 model 里的 rules 生成js验证,model 验证在加载完页面后生效,不可修改,如果需要扩展.动态验证,需要使用js来配合 直接上 ...
- PostgreSQL主备切换
备库如何激活 在PostgreSQL(HOT-Standby)如主库出现异常.备库如何激活:来替换主库工作.有下列2种方式 备库在recovery.conf文件中有个配置项trigger_file.它 ...
- Spring容器AOP的理解
一句话理解:根据被代理对象信息通过Proxy动态生成我们具体的代理类. 实现就动态代理.那动态代理是什么呢? 动态代理其实并不是什么新鲜的东西,学过设计模式的人都应该知道代理模式,代理模式就是一种静态 ...
- HttpClient(五)-- 模拟表单上传文件
1.maven依赖 <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId ...