热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

Oracle非关键文件恢复,redo、临时文件、索引文件、密码文件

Oracle非关键文件恢复,redo、临时文件、索引文件、密码文件

Oracle非关键文件恢复,redo、临时文件、索引文件、密码文件

增量备份的应用在recovery阶段,不再restore阶段

了解数据库设置表:
SQL>desc database_properties
Name Null? Type
----------------------------------------- -------- ----------------------------
PROPERTY_NAME NOT NULL VARCHAR2(30)
PROPERTY_VALUE VARCHAR2(4000)
DESCRIPTION VARCHAR2(4000)

关键性与非关键性
非关键性文件是指数据库和大多数应用程序没有它也能继续运行的文件。例如,如果数据库丢失了一个多路复用重做日志文件,仍可使用其它重做日志文件副本来保持数据库持续运行。
虽然丢失非关键性文件不会导致数据库崩溃,但它会削弱数据库的功能。例如:丢失索引表空间会导致应用程序和查询的运行速度大幅减慢,或者,如果这些索引用于强制实施约束,,则丢失后甚至会导致应用程序无法使用。
丢失联机重做日志组(只要不是当前联机日志组)会导致在 LGWR 下一次尝试写入组时数据库操作被挂起,直到生成新的日志文件为止。


丢失临时表空间会使用户无法运行查询或创建索引,直到将这些用户分配到新的临时表空间为止。
--10g时丢失临时表空间,数据库不能启动,当11g时,丢失了临时文件,数据库会自动创建一个同名同位的临时文件;
--11g中发生此情时发生这种情况时,启动过程中会在预警日志中显示类似下面的消息:
--
Re-creating tempfile /u01/app/Oracle/oradata/orcl/temp01.dbf
----------------------------------------------------------------------------------------------------------------

关于redo log的修改与重建

undo表空间与redo日志

一、日志成员丢失:
要处理重做日志文件的丢失问题,了解重做日志组的可能状态非常重要。在 Oracle DB 正常运行过程中,重做日志组会循环经历三种不同的状态。按照循环的顺序,状态分别是:

CURRENT:此状态表明 LGWR 正在向重做日志组写入数据,以记录数据库中正在进行的所有事务处理的重做数据。该日志组将保持此状态,直到切换至其它日志组为止。

ACTIVE:重做日志组仍包含恢复实例所需的重做数据。这是尚未执行检查点期间重做日志组所处的状态,重做日志组中出现的所有数据更改都将写出到数据文件。

INACTIVE:上述检查点已经执行,这表示不再需要该重做日志组来恢复实例,它可以变为下一个 CURRENT 日志组。

对在线redo log的操作:

查看日志组的状态:
SQL>select GROUP#,SEQUENCE#,MEMBERS,ARCHIVED,STATUS from v$log;

GROUP# SEQUENCE# MEMBERS ARC STATUS
---------- ---------- ---------- --- ----------------
1 7 2 YES INACTIVE
2 8 2 NO CURRENT
3 6 2 YES INACTIVE
查看日志文件的状态:
SQL>select GROUP# ,TYPE,MEMBER from v$logfile;

GROUP# TYPE MEMBER
---------- -----------------------------------------------------------------
3 ONLINE
/u01/app/oracle/oradata/PROD/onlinelog/o1_mf_3_b22567o2_.log

3 ONLINE
/u01/app/oracle/fast_recovery_area/PROD/onlinelog/o1_mf_3_b2256827_.log

2 ONLINE
/u01/app/oracle/oradata/PROD/onlinelog/o1_mf_2_b2255zsg_.log

2 ONLINE
/u01/app/oracle/fast_recovery_area/PROD/onlinelog/o1_mf_2_b22560gb_.log

1 ONLINE
/u01/app/oracle/oradata/PROD/onlinelog/o1_mf_1_b2255npg_.log

1 ONLINE
/u01/app/oracle/fast_recovery_area/PROD/onlinelog/o1_mf_1_b2255nxl_.log

--删除原有的日志组;(只操作状态为inactive的日志组)
--若要操作日志组为current时,需先进行日志切换:alter system switch logfile;
--若为active时,则可强制进行检查点:alter system checkpoint;

1.操作日志文件;

1).当某个日志组中的一个数据文件丢失,对其在线操作,先添加,再删除;

alter database add logfile member '/u01/app/oracle/oradata/PROD/onlinelog/o1_mf_2_b_.log' to group 2;

alter database drop logfile member '/u01/app/oracle/oradata/PROD/onlinelog/o1_mf_1_b2255npg_.log' to group 2;

2).在线添加一个组,再添加一个成员;

SQL>alter database add logfile group 4 '/u01/app/oracle/oradata/ORCL/onlinelog/redo04.log'size 100m;

SQL>alter database add logfile member'/u01/app/oracle/oradata/ORCL/onlinelog/redo04_b.log' to group 4;

3).查看日志组及成员;
SQL>select GROUP#,members,BYTES/1024/1024 size_M,STATUS,ARCHIVED from v$log;


2.日志文件丢失,重启或alter system switch logfile 触发报错;生产库中一般是日志切换触发错误;

1)丢失非current redo日志组

select a.group#, a.status, a.archived,b.member from v$log a,v$logfile b where a.group#=b.group#;
--查看日志组状态及文件虽在位置

推荐阅读
  • 当面临数据库清理任务时,若无删除或重建数据库的权限,可以通过编写SQL脚本来实现批量删除用户自定义的数据表和存储过程。本文将详细介绍如何构造这样的SQL脚本。 ... [详细]
  • 本文探讨了Web开发与游戏开发之间的主要区别,旨在帮助开发者更好地理解两种开发领域的特性和需求。文章基于作者的实际经验和网络资料整理而成。 ... [详细]
  • 深入理解SQL Server中的聚集与非聚集索引
    本文探讨了SQL Server数据库中两种主要的索引类型——聚集索引和非聚集索引,通过对比分析它们的特点及应用场景,旨在帮助读者更好地理解和利用这两种索引以优化查询性能。 ... [详细]
  • 深入解析Android中的SQLite数据库使用
    本文详细介绍了如何在Android应用中使用SQLite数据库进行数据存储。通过自定义类继承SQLiteOpenHelper,实现数据库的创建与版本管理,并提供了具体的学生信息管理示例代码。 ... [详细]
  • 本文探讨了在C语言编程中,如何有效避免多文件项目中的重定义问题,通过合理使用预处理器指令和extern关键字,确保代码的健壮性和可维护性。 ... [详细]
  • 深入理解String.Format()方法的应用
    在.NET框架中,String.Format()方法是一种非常实用的工具,它能够帮助开发者以灵活多样的方式格式化字符串。本文将通过一个具体的示例,详细介绍如何利用String.Format()方法处理数值、日期时间和枚举类型的格式化。 ... [详细]
  • 在安装Ubuntu 12.10并尝试安装VMware Tools时,遇到了一个常见的错误提示:指定的路径不是有效的3.5.0-17-generic内核头文件路径。本文将提供解决这一问题的具体步骤。 ... [详细]
  • Windows 环境下安装 Git 并连接 GitHub 的详细步骤
    本文详细介绍了如何在 Windows 系统中安装 Git 工具,并通过配置 SSH 密钥实现与 GitHub 的安全连接。包括下载、安装、环境配置及验证连接等关键步骤。 ... [详细]
  • 在树莓派Ubuntu(ARM64)上安装Node.js
    本文详细介绍了如何在树莓派Ubuntu系统(ARM64架构)上安装Node.js,包括下载、解压、移动文件以及创建软链接等步骤。 ... [详细]
  • 一位女子向诸位神灵提问,探讨命运、爱情、正义等话题,揭示了人性和社会的多重面向。 ... [详细]
  • Android中解析XML文件的实践指南
    本文详细介绍了在Android应用开发中解析XML文件的方法,包括从本地文件和网络资源获取XML文件的不同途径,以及使用DOM、SAX和PULL三种解析方式的具体实现。 ... [详细]
  • 在DELL Inspiron 14R上部署CentOS X64 6.4的详细步骤
    本文详细记录了在DELL Inspiron 14R笔记本电脑上安装CentOS X64 6.4操作系统的过程,包括遇到的问题及解决方法。 ... [详细]
  • 在Win10上利用VS2015构建Caffe2环境
    本文详细介绍如何在Windows 10操作系统上通过Visual Studio 2015编译Caffe2深度学习框架的过程。包括必要的软件安装、环境配置以及常见问题的解决方法。 ... [详细]
  • 探讨了一个关于是否应该继续深造或直接步入职场的讨论帖,虽然时间久远,但其内容依然具有参考价值。 ... [详细]
  • 本文探讨了在渗透测试中信息收集阶段使用的几种端口扫描技术,包括nmap、masscan、socket、telnet及nc等工具的应用与比较。 ... [详细]
author-avatar
陈珍贵263483
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有