一,实验前的准备

   数据库全备保证自己没成功还能补救一下

vim full.sh
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2/db_1
export ORACLE_SID=proc
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export PATH=$ORACLE_HOME/bin:$PATH
rman target / log /u01/backup/rman_full.log append<<EOF
run
{allocate channel c1 type disk;
allocate channel c2 type disk;
backup database filesperset 4 format '/u01/backup/full_%d_%T_%s_%p';
sql 'alter system archive log current';
sql 'alter system archive log current';
sql 'alter system archive log current';
backup archivelog all format '/u01/backup/arch_%d_%T_%s_%p' delete input;
backup current controlfile format '/u01/backup/ctl_%d_%T_%s_%p';
crosscheck backup;
crosscheck archivelog all;
delete noprompt obsolete;
delete noprompt expired backup;
delete noprompt expired archivelog all;
}
EOF

    查看日志组的状态

size_MB,members,archived,status,first_change#,to_char(FIRST_TIME,'yyyy-mm-dd hh24:mi:ss') first_time from v$log;

    日志文件位置

SELECT group#,member FROM v$logfile;

    记录下来: 开始破坏

    第一步,关闭数据库

    第二步,删除或者移动一个rodo日志.

二,恢复

  启动数据库报错

  发现启动到mount状态后开始报错了

  报错说的还不怎么详细.我们深入看一下

show parameter background_dump

进入报错日志里面查看--报错日志为第一个log文件...

查看最近的报错信息

可以看见日志文件redo3找不到了

  查看日志状态:

    哇,不行.

    现在关闭数据库

    也报错了

    强制关闭

    shutdown abort

启动数据库到mount状态  

     查看日志状态:

      有一个日志文件报错了

 select a.group#,a.thread#,b.member,a.bytes/1024/1024
size_MB,a.members,a.archived,a.status from v$log a,v$logfile b where a.group#=b.group#;

  处理文件:

  alter database clear logfile group 3;

  开启数据库:

   没有报错了

假如日志成员全部删除了也是这样恢复的

    全部删除了,

  启动报错 

  按照上文恢复

  好像并不能关闭了----

 SQL> startup mount
ORACLE instance started. Total System Global Area 1803841536 bytes
Fixed Size 2254144 bytes
Variable Size 1577061056 bytes
Database Buffers 218103808 bytes
Redo Buffers 6422528 bytes
Database mounted.
SQL> select group#,thread#,sequence#,bytes/1024/1024
size_MB,members,archived,status,first_change#,to_char(FIRST_TIME,'yyyy-mm-dd hh24:mi:ss') first_time from v$log;
2
GROUP# THREAD# SEQUENCE# SIZE_MB MEMBERS ARC STATUS
---------- ---------- ---------- ---------- ---------- --- ----------------
FIRST_CHANGE# FIRST_TIME
------------- -------------------
1 1 10749 512 1 NO CURRENT
39958366 2019-02-27 17:17:59 3 1 0 512 1 YES UNUSED
39938038 2019-02-27 16:47:59 2 1 10747 512 1 YES INACTIVE
39938029 2019-02-27 16:47:59 SQL> alter database clear logfile group 3;^H^H^H^H^H^H
2
SQL> s^H^H
SP2-0042: unknown command " - rest of line ignored.
SQL>
SQL>
SQL>
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-03113: end-of-file on communication channel
Process ID: 3292
Session ID: 1705 Serial number: 5 SQL> alter database clear logfile group 3;
ERROR:
ORA-03114: not connected to ORACLE SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
[oracle@dataknown prod]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on Wed Feb 27 17:51:40 2019 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to an idle instance. SQL> startup mount
ORACLE instance started. Total System Global Area 1803841536 bytes
Fixed Size 2254144 bytes
Variable Size 1577061056 bytes
Database Buffers 218103808 bytes
Redo Buffers 6422528 bytes
Database mounted.
SQL> alter database clear logfile group 3; Database altered. SQL> alter database open; Database altered. SQL>

插入发现以下报错的可以参考参考

 SQL> alter database clear logfile group 3;
alter database clear logfile group 3
*
ERROR at line 1:
ORA-00350: log 3 of instance prod (thread 1) needs to be archived
ORA-00312: online log 3 thread 1: '/data/oradata/prod/redo03.log'

执行以下命令:

alter database clear unarchived logfile group 3;

然后在打开数据库

  

    

  

   

oracle 操作实例(一)----redolog 损坏恢复的更多相关文章

  1. oracle 操作实例(一)----rman 全备恢复

    一,环境背景 拥有全备数据库 全备脚本: export TMP=/tmp export TMPDIR=$TMP export ORACLE_BASE=/u01 export ORACLE_SID=pr ...

  2. Oracle连接配置以及实例的备份和恢复

    背景:一个团队项目开发,不可能每个人都架设自己本地的数据库,大多数情况下是统一用服务器上的数据库,这时候就需要进行远程数据库的连接.而且有时候还需要进行数据库搬迁 ,这时候就需要进行数据库的备份和恢复 ...

  3. ORACLE表空间操作实例

    本文主要介绍oracle表空间常见的操作实例,包括创建.查询.增加.删除.修改.表空间和数据文件常用的数据字典和动态性能视图包括v$dbfile.v$datafile.v$tempfile.dba_s ...

  4. Oracle 数据库实例启动关闭过程

    Oracle数据库实例的启动,严格来说应该是实例的启动,数据库仅仅是在实例启动后进行装载.Oracle数据启动的过程被划分为 几个不同的步骤,在不同的启动过程中,我们可以对其实现不同的操作,系统修复等 ...

  5. ORACLE数据库不同故障下的恢复总结

    ORACLE数据库不同故障下的恢复总结1. 非归档模式下丢失或损坏的文件--1.1 数据文件--启动数据库的状态到MOUNT--恢复方法:通过之前创建的数据库完整备份,修复整个数据库,不过备份之后发生 ...

  6. Oracle 数据库实例简介

      回到顶部 一:Oracle 数据库实例简介 1:数据库实例的启动顺序: 使用数据库其实就是访问内存.即:数据库实例.数据库的启动是顺序是 先 nomount ---->  mount --- ...

  7. Oracle 启动实例(instance)、打开数据库

    Oracle启动实例(instance).打开数据库   by:授客 QQ:1033553122 启动实例(instance).打开数据库 1.开启sqlplus [laiyu@localhost ~ ...

  8. oracle数据库实例状态

    1.已启动/不装载(NOMOUNT).启动实例,但不装载数据库. 该模式用于重新创建控制文件,对控制文件进行恢复或重新创建数据库.2.已装载(MOUNT).装载数据库,但不打开数据库. 该模式用于更改 ...

  9. Windows2008 R2上完全卸载Oracle操作步骤(转)

    最近现场项目,碰到了好几次oracle数据库被损坏,而且无法恢复的问题,没办法,只好卸载重装了.oracle卸载确实麻烦,都是从网上查的方法, 为了方便以后查询,在此就做一下记录. Windows20 ...

随机推荐

  1. .net 序列化 与反序列化 Serializable

    序列化:序列化指的是 将对象 通过流的方式 保存为一个文件. 反序列化则是将该文件还原成 对象的过程. 序列化的作用:序列化可以跨语言跨平台 传输数据,将某一对象序列化成通用的文件格式在进行传输. 比 ...

  2. js中的arguments 参数

    function sum (a,b) { } //1,2 为实参 3,4 为形参 sum(1,2,3,4) 打印参数长度 arguments.length 函数实参长度 函数名.length

  3. SQL Server 2012自动备份

    SQL 2012和2008一样,都可以做维护计划,来对数据库进行自动的备份. 现在做这样一个数据库维护的计划,每天0点对数据库进行差异备份,每周日0点对数据库进行完全备份,并且每天晚上10点删除一次过 ...

  4. js作用域解析原理

    当代码进入到<script>标签或者在调用一个方法,那么就会进入作用域,在解析代码的时候就会做以下两件事情: ①去找var 和function关键字进行js预解析如果有var把值全部定义成 ...

  5. 关于MultiDataTrigger和MultiTrigger的一些注意事项

    他俩有着相同的语法. 都是在conditions中编写触发条件. 因为都是同一个触发类. 在conditions中有Property和Binding这两个属性.那么这两个可以同时使用吗?当然是不可以的 ...

  6. openvpn的搭建与应用

    一.VPN概述: VPN(Virtual Private NetWork,虚拟专用网络)架设在公共共享的基础设施互联网上,在非信任的网络上建立私有的安全的连接,把分布在不同地域的办公场所.用户或者商业 ...

  7. WebStorm安装与快捷键

    WebStorm是JetBrains 推出的一款强大的HTML5编辑工具(特别开发JavaScript非常好用),被JavaScript开发者誉为“web前端开发神奇”.“最强悍的JavaScript ...

  8. loj#6041. 「雅礼集训 2017 Day7」事情的相似度(后缀自动机+启发式合并)

    题面 传送门 题解 为什么成天有人想搞些大新闻 这里写的是\(yyb\)巨巨说的启发式合并的做法(虽然\(LCT\)的做法不知道比它快到哪里去了--) 建出\(SAM\),那么两个前缀的最长公共后缀就 ...

  9. Flink学习笔记:Connectors概述

    本文为<Flink大数据项目实战>学习笔记,想通过视频系统学习Flink这个最火爆的大数据计算框架的同学,推荐学习课程: Flink大数据项目实战:http://t.cn/EJtKhaz ...

  10. SDUT OJ 数据结构实验之排序三:bucket sort

    数据结构实验之排序三:bucket sort Time Limit: 250 ms Memory Limit: 65536 KiB Submit Statistic Discuss Problem D ...