DBA_Oracle日志文件 - altert / trace /audit / redo / archive log(概念)

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 2014-07-26 Created By BaoXinjian 一、摘要 1. 日志 简称日志一般指的是联机重做日志文件(Redlog)。 主要功能是恢复异常关闭的数据库和保证数据的完整性、一致性。

 2014-07-26 Created By BaoXinjian

一、摘要


1. 日志

简称日志一般指的是联机重做日志文件(Redlog)。

主要功能是恢复异常关闭的数据库和保证数据的完整性、一致性。

还有可恢复近期丢失的数据(这要看重做日志文件的容量)。

重做文件的原理是:把DML(Insert、Update、Delete)语句所处理的前后记录都写入重做日志文件中。

当数据库的数据出故障时利用重做日志文件中的数据重新运行一次之前做过的业务,以此来恢复数据库中除了故障的数据。

重做日志文件至少要有两组,一般是三组。写满第一组写第二组,写满第二组写第三组,写满第三组返回覆盖写第一组

 

2. 日志类型

(1). 警告日志 altert log

alert日志: 在系统初始化参数文件设置的background_dump_dest对应的就是它的位置。

(2). 跟踪日志 trace log

trace日志:一般放seesion追踪的信息,对应系统初始化参数文件参数user_dump_dest对应的就是它的位置。

(3). 审计日志 audit log

audit日志:审计的信息,对应系统初始化参数文件参数audit_file_dest对应的就是它的位置。

(4). 重做日志 redo log

redo日志:存放数据库的更改信息,select member from v$logfile; member就代表它的位置归档日志。

(5). 归档日志 archive log

archive日志的历史备份,select * from v$parameter where name like 'log_archive_dest%'; 它的value的值就是位置。

 

二、警告日志


1. 警告日志概念

ORACLE警告日志记录一些信息和操作ORACLE数据库时的错误警告。

当数据库出现问题时,警告日志很快会给你指出问题所在。

比如说表不能增加存储空间,回滚段问题等等都包含在警告日志中。正因为如此,我们每天都要检查警告日志文件,看看数据库有没有什么异常?

必须说明的是,当碰到ora-0600这个错误时,你应该与oracle技术支持联系一下,

2. 警告日志的位置

3. 警告日志的简单例子

 

三、跟踪日志


1. 跟踪日志概念

Trace file(追踪文件)是以trc为后续的文本文件,它记录了各种sql操作及所消耗的时间等,根据trace文件我们就可以了解哪些sql导致了系统的性能瓶颈,进而采取恰当的方式调优.

2. 跟踪日志的位置

3. 跟踪日志的简单例子 

 

 

四、审计日志


1. 审计日志概念

 审计(Audit)用于监视用户所执行的数据库操作,并且Oracle会将审计跟踪结果存放到OS文件(默认位置为$ORACLE_BASE/admin/$ORACLE_SID/adump/)或数据库(存储在system表空间中的 SYS.AUD$表中,可通过视图dba_audit_trail查看)中。默认情况下审计是没有开启的。

不管你是否打开数据库的审计功能,以下这些操作系统会强制记录:用管理员权限连接Instance;启动数据库;关闭数据库。

2. 审计日志的位置

3. 审计日志的简单例子 

 

五、重做日志


1. 重做日志概念

(1). 重做日志文件,记录了对数据库修改的信息,包括用户对数据修改和数据库管理员对数据库结构的修改

      它主要用于在发生故障的时候和数据库备份文件配合恢复数据库,一般发生故障有2个情况:一个是介质损坏另外一个是用户误操作。

      每个数据库至少有两个日志文件组,每组至少包含1个或者多个日志成员,这里要多个日志成员的原因是防止日志文件组内某个日志文件损坏后及时提供备份,所以同一组的日志成员一般内容信息相同,但是存放位置不同。

(2). 日志文件是循环使用的

当第一个日志文件达到一定数量时,就会停止写入,而转向第二个日志文件;

第二个满转向第三个日志文件;

第三个满就向第一个日志文件写入;

而第一个日志文件有没有自动备份就涉及到归档或者不归档的问题;

当数据库自动对原来的日志文件进行备份的话就叫归档模式,不需要对数据库进行自动备份就叫非归档模式;

(3). 非归档模式

      不适用与生产数据库

      创建数据库时,缺省的日志管理模式为非归档模式

      当日志切换,检查点产生后,联机重做日志文件即可被重新使用

      联机日志被覆盖后,介质恢复仅仅支持到最近的完整备份

      不支持联机备份表空间,一个表空间损坏将导致整个数据库不可用,需要删除掉损坏的表空间或从备份恢复

      对于操作系统级别的数据库备份需要将数据库一致性关闭

      应当备份所有的数据文件、控制文件(单个)、参数文件、密码文件、联机日志文件(可选)

2. 重做日志的位置

3. 重做日志的简单例子 

 

 

六、归档日志


1. 归档日志概念

(1). 归档日志(Archive Log)是非活动的重做日志备份.

通过使用归档日志,可以保留所有重做历史记录,

当数据库处于ARCHIVELOG模式并进行日志切换式,

后台进程ARCH会将重做日志的内容保存到归档日志中.

当数据库出现介质失败时,使用数据文件备份,归档日志和重做日志可以完全恢复数据库.

(2). 归档模式

        能够对联机日志文件进行归档,生产数据库强烈建议归档

        在日志切换时,下一个即将被写入日志组必须归档完成之后,日志组才可以使用

        归档日志的Log sequence number信息会记录到控制文件之中

        必须有足够的磁盘空间用于存放归档日志

        备份与恢复

            支持热备份,且当某个非系统表空间损坏,数据库仍然处于可用状态,且支持在线恢复

            使用归档日志能够实现联机或脱机时点恢复(即可以恢复到指定的时间点、指定的归档日志或指定的SCN) 

2. 归档日志的位置

 

3. 归档日志的简单例子 

 因数据库未启动归档日志模式,所以无归档日志备份

 

Thanks and Regards

ERP技术讨论群: 288307890
技术交流,技术讨论,欢迎加入
Technology Blog Created By Oracle ERP - 鲍新建
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
16天前
|
XML 安全 Java
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
本文介绍了Java日志框架的基本概念和使用方法,重点讨论了SLF4J、Log4j、Logback和Log4j2之间的关系及其性能对比。SLF4J作为一个日志抽象层,允许开发者使用统一的日志接口,而Log4j、Logback和Log4j2则是具体的日志实现框架。Log4j2在性能上优于Logback,推荐在新项目中使用。文章还详细说明了如何在Spring Boot项目中配置Log4j2和Logback,以及如何使用Lombok简化日志记录。最后,提供了一些日志配置的最佳实践,包括滚动日志、统一日志格式和提高日志性能的方法。
137 30
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
|
1月前
|
XML JSON Java
Logback 与 log4j2 性能对比:谁才是日志框架的性能王者?
【10月更文挑战第5天】在Java开发中,日志框架是不可或缺的工具,它们帮助我们记录系统运行时的信息、警告和错误,对于开发人员来说至关重要。在众多日志框架中,Logback和log4j2以其卓越的性能和丰富的功能脱颖而出,成为开发者们的首选。本文将深入探讨Logback与log4j2在性能方面的对比,通过详细的分析和实例,帮助大家理解两者之间的性能差异,以便在实际项目中做出更明智的选择。
235 3
|
1月前
|
SQL 存储 关系型数据库
美团面试:binlog、redo log、undo log的底层原理是什么?它们分别实现ACID的哪个特性?
老架构师尼恩在其读者交流群中分享了关于 MySQL 中 redo log、undo log 和 binlog 的面试题及其答案。这些问题涵盖了事务的 ACID 特性、日志的一致性问题、SQL 语句的执行流程等。尼恩详细解释了这些日志的作用、所在架构层级、日志形式、缓存机制以及写文件方式等内容。他还提供了多个面试题的详细解答,帮助读者系统化地掌握这些知识点,提升面试表现。此外,尼恩还推荐了《尼恩Java面试宝典PDF》和其他技术圣经系列PDF,帮助读者进一步巩固知识,实现“offer自由”。
美团面试:binlog、redo log、undo log的底层原理是什么?它们分别实现ACID的哪个特性?
|
30天前
|
存储 关系型数据库 MySQL
MySQL中的Redo Log、Undo Log和Binlog:深入解析
【10月更文挑战第21天】在数据库管理系统中,日志是保障数据一致性和完整性的关键机制。MySQL作为一种广泛使用的关系型数据库管理系统,提供了多种日志类型来满足不同的需求。本文将详细介绍MySQL中的Redo Log、Undo Log和Binlog,从背景、业务场景、功能、底层实现原理、使用措施等方面进行详细分析,并通过Java代码示例展示如何与这些日志进行交互。
73 0
|
1月前
|
Python
log日志学习
【10月更文挑战第9天】 python处理log打印模块log的使用和介绍
35 0
|
1月前
|
数据可视化
Tensorboard可视化学习笔记(一):如何可视化通过网页查看log日志
关于如何使用TensorBoard进行数据可视化的教程,包括TensorBoard的安装、配置环境变量、将数据写入TensorBoard、启动TensorBoard以及如何通过网页查看日志文件。
205 0
|
3月前
|
Kubernetes Ubuntu Windows
【Azure K8S | AKS】分享从AKS集群的Node中查看日志的方法(/var/log)
【Azure K8S | AKS】分享从AKS集群的Node中查看日志的方法(/var/log)
135 3
|
1月前
|
存储 缓存 关系型数据库
MySQL事务日志-Redo Log工作原理分析
事务的隔离性和原子性分别通过锁和事务日志实现,而持久性则依赖于事务日志中的`Redo Log`。在MySQL中,`Redo Log`确保已提交事务的数据能持久保存,即使系统崩溃也能通过重做日志恢复数据。其工作原理是记录数据在内存中的更改,待事务提交时写入磁盘。此外,`Redo Log`采用简单的物理日志格式和高效的顺序IO,确保快速提交。通过不同的落盘策略,可在性能和安全性之间做出权衡。
1638 14
|
1月前
|
存储 分布式计算 NoSQL
大数据-136 - ClickHouse 集群 表引擎详解1 - 日志、Log、Memory、Merge
大数据-136 - ClickHouse 集群 表引擎详解1 - 日志、Log、Memory、Merge
42 0
|
1月前
|
缓存 Linux 编译器
【C++】CentOS环境搭建-安装log4cplus日志组件包及报错解决方案
通过上述步骤,您应该能够在CentOS环境中成功安装并使用log4cplus日志组件。面对任何安装或使用过程中出现的问题,仔细检查错误信息,对照提供的解决方案进行调整,通常都能找到合适的解决之道。log4cplus的强大功能将为您的项目提供灵活、高效的日志管理方案,助力软件开发与维护。
54 0

推荐镜像

更多