恢复处于NOARCHIVELOG模式的数据库

当数据库处于NOARCHIVELOG模式时,如果出现介质故障 ,则最后一次备份之后对数据库所做的任何操作都将丢失。通过RMAN执行恢复时,只需要执行restore命令将数据库文件修复到正确的位置,然后就可以打开数据库。也就是说,对于处于NOARCHIVELOG模式下的数据库,管理员不需要执行recover命令。

1.Sys登陆,并确认数据库属于NOARCHIVELOG模式

SQL> select log_mode from v$database;

LOG_MODE

------------

ARCHIVELOG

SQL>

SQL>

SQL>

SQL> shutdown immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> startup mount

ORACLE instance started.

Total System Global Area 2755870720 bytes

Fixed Size     2256432 bytes

Variable Size   671089104 bytes

Database Buffers  2063597568 bytes

Redo Buffers    18927616 bytes

Database mounted.

2.更改数据库为noarchivelog状态

SQL> alter database noarchivelog;

alter database noarchivelog

*

ERROR at line 1:

ORA-38774: cannot disable media recovery - flashback database is enabled

SQL> alter database flashback off;

Database altered.

SQL> alter database noarchivelog;

Database altered.

SQL> archive log list;

3.执行一下命令,备份整个数据库

RMAN> run{

2> allocate channel ch_1 type disk;

3> backup database

4> format '/u01/app/oracle/oradata/Backup/orcl_%t_%u.bak';

5> }

4.可以查看一下备份下来的文件,上边有路径,数据文件和控制文件

5.模拟users.dbf丢失,这里可以先查找数据文件的位置

SQL> select file_name,tablespace_name,bytes from dba_data_files;

[oracle@orcl Backup]$ cd /u01/app/oracle/oradata/orcl

[oracle@orcl orcl]$ rm users01.dbf

6.删除的时候数据库必须是关闭的,不然系统禁止删除正在使用的数据文件,现在到起库测试一下,提示找不到数据文件

RMAN> startup

database is already started

RMAN-00571: ===========================================================

RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============

RMAN-00571: ===========================================================

RMAN-03002: failure of startup command at 12/04/2019 03:39:53

ORA-01157: cannot identify/lock data file 4 - see DBWR trace file

ORA-01110: data file 4: '/u01/app/oracle/oradata/orcl/users01.dbf'

RMAN> run{

7.startup mount状态才能访问数据文件,就可以执行restore

RMAN> run{

2> allocate channel ch_1 type disk;

3> restore database;

4> }

这时候看一下数据文件是可以恢复到目录下的

8.起库看一下是可以起来的

RMAN> startup

database is already started

database opened

处于ARCHIVE模式

恢复处于archivelog模式的数据库

1.查看数据库是否处于归档

SQL> archive log list;

2.启动rman对目标表空间进行备份,然后模拟删除

[oracle@orcl Backup]$ ramn target /

RMAN> run{

2> allocate channel ch_1 type disk;

3> allocate channel ch_2 type disk;

4> backup tablespace users

5> format '/u01/app/oracle/oradata/Backup/users_tablespace.bak';

6> }

3.关闭数据库,然后模拟删除掉users.dbf,users.dbf的路径怎么找上边写的有命令

RMAN> shutdown immediate

database closed

database dismounted

Oracle instance shut down

RMAN> startup mount

RMAN> alter database open;

RMAN-00571: ===========================================================

RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============

RMAN-00571: ===========================================================

RMAN-03002: failure of alter db command at 12/04/2019 05:20:32

ORA-01157: cannot identify/lock data file 4 - see DBWR trace file

ORA-01110: data file 4: '/u01/app/oracle/oradata/orcl/users01.dbf'

4.数据库现在mount状态,恢复表空间

RMAN> run{

2> allocate channel ch_1 type disk;

3> restore tablespace users;

4> recover tablespace users;

5> }

5.更改成open状态是没有问题的,users的数据文件还是在的

RMAN> alter database open;

database opened

RMAN 下NOARCHIVELOG和ARCHIVE模式的恢复的更多相关文章

  1. Oracle之rman数据库在非归档模式下的备份和恢复

    1.数据库在非归档模式下的备份 SQL> archive log list;数据库日志模式 非存档模式自动存档 禁用存档终点 USE_DB_RECOVERY_FILE_DEST最早的联机日志序列 ...

  2. RMAN备份介质的移动与再恢复测试 [ catalog start with ‘dir’ ]

    --RMAN备份介质的移动与再恢复测试 ---------------------------------------------------------2013/09/21   由于目前生产环境中没 ...

  3. 在NOARCHIVELOG和ARCHIVELOG模式之间选择

    本节介绍在选择以NOARCHIVELOG或ARCHIVELOG模式运行数据库时必须考虑的问题,并包含以下主题: 在NOARCHIVELOG模式下运行数据库 在ARCHIVELOG模式下运行数据库 是否 ...

  4. 【12c】12c RMAN新特性之通过网络远程恢复数据库(RESTORE/Recover from Service)

    [12c]12c RMAN新特性之通过网络远程恢复数据库(RESTORE/Recover from Service) 通过网络远程恢复数据库(Restore/Recover from Service) ...

  5. threaded模式下,比prefork模式要省资源

    关于nginx + fastcgi + django 2009-03-10 17:14:43 分类: 系统运维 最近用django开发了一套广告投放系统,这套系统其实是一套网络广告联盟系统,包括广告的 ...

  6. linux下rm -r误删NTFS文件恢复方法

    一时疏忽,手一抖,把整个挂载的F盘删了一半!顿时傻眼!! 被删的F盘是Windows下NTFS分区,在Ubuntu12.04中挂载了F盘,使用rm命令时粗心大意,误删了一半的数据. 血的教训告诉我们, ...

  7. 如何在安装32位Oracle客户端组件的情况下以64位模式运行

    C#使用System.Data.OracleClient连接Oracle数据库.之前在WinXP上正常运行的程序移植到Windows 2008 x64上之后就连不上数据库了,错误信息如下:启动data ...

  8. 月半小夜曲下的畅想--DOCTYPE模式

    月半小夜曲下的畅想--DOCTYPE模式 @(css3 box-sizing)[doctype声明|quirks模式|妙瞳] DOCTYPE文档类型标签,该标签是将特定的标准通用标记语言或者XML文档 ...

  9. 尝试加载 Oracle 客户端库时引发 BadImageFormatException。如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题。

    从10G开始,Oracle提供了一个较为轻量级的客户包,叫做Instant Client. 将它安装好后,就不用再安装庞大的Oracle Client了. 这样一来,只要客户端下载Instant Cl ...

随机推荐

  1. 深入浅出Spring(四)

    我们分别介绍了一下Spring框架的两个核心一个是IoC,一个是AOP.接下来我们来做一个Spring的实例. 为了更好的讲解Spring的相关内容,这次的博文会针对一个[添加用户]的实例,进行逐步的 ...

  2. c, ANSI C, embedded c, after IKM online assessment

    C programming language was developed in 1972 by Dennis Ritchie at bell laboratories of AT&T (Ame ...

  3. 基于VMware Workstation下CentOS的搭建

    网络安全学习内容 二.VMware安装CentOS系统 需要准备的文件: 从http://mirrors.huaweicloud.com/centos/7.7.1908/isos/x86_64/中下载 ...

  4. iOS 手势及触摸

    转自:http://justsee.iteye.com/blog/1885538 一.响应链 在IOS开发中会遇到各种操作事件,通过程序可以对这些事件做出响应. 首先,当发生事件响应时,必须知道由谁来 ...

  5. React中autoComplete="off" 失效

    Turning Off Autocomplete in Chrome with React tl;dr Add a hidden input with an arbitrary value attri ...

  6. EditText 无法失焦与失焦后键盘不收缩解决方案

    背景 有一个需求,比方说下图: 点击了上图的Image 区域才可以编辑. 那么我首先想到的就是: android:focusable="false" 不让它获取到焦点不就ok吗? ...

  7. Java修炼——Set的子接口Vector的方法使用

    Vector的方法和ArrayList相似 package com.bjsxt.Array; import java.util.Iterator; import java.util.List; imp ...

  8. 强化学习环境OpenAi搭建,从虚拟机到Gym、Mujoco和mujoco-py的完整安装

    平时不怎么写博客,这次是因为环境的配置花费了我大概一个星期的时间.所以简单的记录一下搭建的整个过程,其中有些部分我直接推荐别人的博客的基本教程,都是我亲自尝试过成功的.同时,也希望这篇博客可以帮到您. ...

  9. Python爬虫--喜马拉雅三国音频爬取

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理.作者:Botreechan  1.进入地址我们可以发现,页面有着非常整齐的目 ...

  10. Socket无法通过防火墙的问题

    无论是配好端口还是例外的应用程序都不行 更改本地终结点为 socket.Bind()); IPAddress.Any 不要使用127.0.0.1 不要使用127.0.0.1 不要使用127.0.0.1