1.退出日志应用模式
[oracle@localhost ~]$ sqlplus /nolog

SQL*Plus: Release 11.2.0.4.0 Production on Mon Jan 14 16:09:16 2019

Copyright (c) 1982, 2013, Oracle. All rights reserved.

SQL> connect / as sysdba
Connected.
SQL> alter database recover managed standby database cancel;

Database altered.

2.停掉数据库
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.

3.模拟删除掉所有的控制文件
[oracle@localhost slnngkdg]$ cd /u01/app/oracle/oradata/slnngkdg
[oracle@localhost slnngkdg]$ mv control01.ctl bak_control01.ctl
[oracle@localhost slnngkdg]$ cd /u01/app/oracle/fast_recovery_area/slnngkdg
[oracle@localhost slnngkdg]$ mv control02.ctl bak_control02.ctl

4.尝试启动数据库
SQL> connect / as sysdba
Connected to an idle instance.
SQL> startup
ORACLE instance started.

Total System Global Area 3724607488 bytes
Fixed Size 2258760 bytes
Variable Size 788531384 bytes
Database Buffers 2919235584 bytes
Redo Buffers 14581760 bytes
ORA-00205: error in identifying control file, check alert log for more info

发现报错

5.启动数据库到nonout状态,然后恢复控制文件
[oracle@localhost ~]$ rman target /
RMAN> startup nomount;

database is already started

RMAN> restore controlfile from '/home/oracle/rman_bakckup/ctl_SLNNGK_36_1_20190114';

Starting restore at 14-JAN-19
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=133 device type=DISK

channel ORA_DISK_1: restoring control file
channel ORA_DISK_1: restore complete, elapsed time: 00:00:07
output file name=/u01/app/oracle/oradata/slnngkdg/control01.ctl
output file name=/u01/app/oracle/fast_recovery_area/slnngkdg/control02.ctl
Finished restore at 14-JAN-19

6.启动数据库到mount状态
RMAN> alter database mount;

database mounted
released channel: ORA_DISK_1

7.做不完全恢复,指定sequence,数据量很大的情况下,该步骤会很消耗时间,可以写个脚本采用nohup执行
从主库看下当前的日志序号,看到主库当前的日志序号为290,那么我们直接指定该序号,要是没有权限查看,也可以使用系统视图查看(Select Max(t.SEQUENCE#) +1 From v$archived_log t)
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /u01/app/oracle/archive_log
Oldest online log sequence 288
Next log sequence to archive 290
Current log sequence 290

run{
set until sequence 290;
restore database;
recover database;
}

8.打开数据库
RMAN> alter database open;

database opened

9.应用主库日志
alter database recover managed standby database using current logfile disconnect from session;

dataguard从库数据库丢失恢复例子(模拟所有的控制文件)的更多相关文章

  1. dataguard从库数据库丢失恢复例子(模拟丢失数据文件)

    准备工作,使用如下脚本进行数据库的全备份[oracle@localhost ~]$ more rman_backup.sh #!/bin/sh RMAN_OUTPUT_LOG=/home/oracle ...

  2. RMAN 备份恢复 删除表空间后控制文件丢失

    先备份一个控制文件 RMAN> backup current controlfile tag='bak_ctlfile' format='/home/oracle/backup/bak_ctl_ ...

  3. RMAN恢复 增加表空间后控制文件丢失

    查看目前的控制文件位置 SQL> select name from v$controlfile; NAME-------------------------------------------- ...

  4. dataguard从库删除归档的例子

    deletearchlog.sh #!/bin/sh export PATH TABLE='v$archived_log' sqlplus -silent "/ as sysdba" ...

  5. oracle 备份恢复篇(五)---rman 剩下控制文件和spfile

    一,环境准备 ❤ 拥有全量备份文件

  6. Oracle DB备份恢复篇之丢失控制文件

    实验目的 本篇主要模拟控制文件丢失后,如何根据实际情况恢复数据库,才能使数据库尽可能不丢失数据. 实验环境 1)Linux系统环境 [oracle@DG1 ~]$ lsb_release -a LSB ...

  7. RMAN数据库恢复之控制文件和参数文件恢复

    一.控制文件的恢复1.查询控制文件的路径 SQL> SELECT * FROM V$CONTROLFILE; STATUS NAME IS_RECOVERY_DEST_FILE BLOCK_SI ...

  8. MySQL数据库迁移与MySQL数据库批量恢复

    目录 一.MySQL数据库迁移或备份 1. 了解使用InnoDB引擎创建数据库所产生的文件 2. 迁移数据库步骤 1. 从A服务器迁移至B服务器 2. MySQL重装并导入之前数据库 二.MySQL数 ...

  9. Oracle数据库体系结构(4)oracle控制文件

    控制文件的概述 1.控制文件是oracle数据库非常重要的物理文件,描述了整个数据库的物理结构信息,包括数据库名称.数据文件与重做日志文件的名称与位置,日志序列号等信息.数据库实例根据初始化参数CON ...

随机推荐

  1. 域渗透分析神器BloodHound

    一.安装过程: 1.首先安装JDK,要求是JDK8 JDK8下载地址 windows下按照提示自动安装好久可以了 2.安装neo4j neo4j图数据库下载地址 下载好后,进入对应的目录在命令行运行如 ...

  2. iOS - 如何得到UIImage的大小

    把UIImage 转换为NSData,然后拿到NSData的大小 NSData * imageData = UIImageJPEGRepresentation(image,); length = [i ...

  3. 线程的信号量Semaphore

    线程和进程一样也有信号量,一个资源在同一时刻只有规定数量的线程能使用.

  4. Nestjs 序列化(Serialization)

    文档 在发送实际响应之前,Serializers为数据操作提供了干净的抽象层.例如,应始终从最终响应中排除敏感数据(如用户密码) λ yarn add class-transformer cats.e ...

  5. 在eclipse中使用Tomcat时出现Could not publish server ...错误

    在使用eclipse加载tomcat服务器运行项目时遇到问题:    在Tomcat的安装目录下的\conf\server.xml中将<Context>标签所对应的重复名称项目删除   这 ...

  6. 23、svn与打飞机

    svn与git 打飞机 css *{margin:0; padding:0;} html,body{width:100%; height:100%; overflow: hidden;} .main{ ...

  7. 窗口,父窗口parentwindow,所有者窗口ownerwindow

    参考文档:http://www.cnblogs.com/fwycmengsoft/p/4026592.html 一. parent:创建者,owner:所有者 小玉的父母生下小玉,养到8岁,卖给贾府当 ...

  8. H5 C3

    为什么学习HTML5 a.因为语义化标签的出现网页结构更加清晰 b.因为多媒体的出现,让网页播放音频和视频没有了依赖 c.因为CSS3的出现,让页面变得更加炫酷和多彩 d.因为新的API的出现,使的开 ...

  9. jQuery 实现点击页面其他地方隐藏菜单

    点击页面其它地方隐藏id为messageList的div 代码: $('body').delegate("#message", 'click', function(e) { var ...

  10. Redis实战经验及使用场景

    随着应用对高性能需求的增加,NoSQL逐渐在各大名企的系统架构中生根发芽.这里我们将为大家分享社交巨头新浪微博.传媒巨头Viacom及图片分享领域佼佼者Pinterest带来的Redis实践,首先我们 ...