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

简介: 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 - 鲍新建
相关实践学习
通过日志服务实现云资源OSS的安全审计
本实验介绍如何通过日志服务实现云资源OSS的安全审计。
相关文章
|
6月前
|
存储 监控 算法
防止员工泄密软件中文件访问日志管理的 Go 语言 B + 树算法
B+树凭借高效范围查询与稳定插入删除性能,为防止员工泄密软件提供高响应、可追溯的日志管理方案,显著提升海量文件操作日志的存储与检索效率。
189 2
|
存储 SQL 关系型数据库
MySQL日志详解——日志分类、二进制日志bin log、回滚日志undo log、重做日志redo log
MySQL日志详解——日志分类、二进制日志bin log、回滚日志undo log、重做日志redo log、原理、写入过程;binlog与redolog区别、update语句的执行流程、两阶段提交、主从复制、三种日志的使用场景;查询日志、慢查询日志、错误日志等其他几类日志
1078 35
MySQL日志详解——日志分类、二进制日志bin log、回滚日志undo log、重做日志redo log
|
存储 缓存 关系型数据库
图解MySQL【日志】——Redo Log
Redo Log(重做日志)是数据库中用于记录数据页修改的物理日志,确保事务的持久性和一致性。其主要作用包括崩溃恢复、提高性能和保证事务一致性。Redo Log 通过先写日志的方式,在内存中缓存修改操作,并在适当时候刷入磁盘,减少随机写入带来的性能损耗。WAL(Write-Ahead Logging)技术的核心思想是先将修改操作记录到日志文件中,再择机写入磁盘,从而实现高效且安全的数据持久化。Redo Log 的持久化过程涉及 Redo Log Buffer 和不同刷盘时机的控制参数(如 `innodb_flush_log_at_trx_commit`),以平衡性能与数据安全性。
780 5
图解MySQL【日志】——Redo Log
|
12月前
|
数据库 文件存储 数据安全/隐私保护
YashanDB redo日志文件管理
YashanDB的redo日志文件用于记录数据库物理日志,支持宕机重演和主备复制。 redo日志有4种状态:NEW(新创建)、CURRENT(当前写入)、ACTIVE(未归档或未写盘)和INACTIVE(可复用)。可通过V$LOGFILE视图或直接查看$YASDB_DATA/dbfiles目录来管理redo日志。此外,支持添加、切换和删除redo日志以优化性能或应对磁盘故障等情况,但需注意仅能删除INACTIVE或NEW状态的日志以确保数据安全。
|
存储 SQL 关系型数据库
mysql的undo log、redo log、bin log、buffer pool
MySQL的undo log、redo log、bin log和buffer pool是确保数据库高效、安全和可靠运行的关键组件。理解这些组件的工作原理和作用,对于优化数据库性能和保障数据安全具有重要意义。通过适当的配置和优化,可以显著提升MySQL的运行效率和数据可靠性。
314 16
|
运维 应用服务中间件 nginx
docker运维查看指定应用log文件位置和名称
通过本文的方法,您可以更高效地管理和查看Docker容器中的日志文件,确保应用运行状态可控和可监测。
2277 28
|
存储 SQL 关系型数据库
mysql的undo log、redo log、bin log、buffer pool
MySQL的undo log、redo log、bin log和buffer pool是确保数据库高效、安全和可靠运行的关键组件。理解这些组件的工作原理和作用,对于优化数据库性能和保障数据安全具有重要意义。通过适当的配置和优化,可以显著提升MySQL的运行效率和数据可靠性。
230 4
|
SQL 存储 关系型数据库
简单聊聊MySQL的三大日志(Redo Log、Binlog和Undo Log)各有什么区别
在MySQL数据库管理中,理解Redo Log(重做日志)、Binlog(二进制日志)和Undo Log(回滚日志)至关重要。Redo Log确保数据持久性和崩溃恢复;Binlog用于主从复制和数据恢复,记录逻辑操作;Undo Log支持事务的原子性和隔离性,实现回滚与MVCC。三者协同工作,保障事务ACID特性。文章还详细解析了日志写入流程及可能的异常情况,帮助深入理解数据库日志机制。
1585 0
|
SQL 数据采集 监控
基于日志服务数据加工分析Java异常日志
采集并脱敏了整个5月份的项目异常日志,准备使用日志服务数据加工做数据清洗以及分析。本案例是基于使用阿里云相关产品(OSS,RDS,SLS等)的SDK展开自身业务。需要对异常日志做解析,将原始日志中时间、错误码、错误信息、状态码、产品信息、请求方法、出错行号提取出来。然后根据提取出来的不同产品信息做多目标分发处理。对清洗后的数据做异常日志数据分析。
1202 0
基于日志服务数据加工分析Java异常日志
|
XML 安全 Java
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
本文介绍了Java日志框架的基本概念和使用方法,重点讨论了SLF4J、Log4j、Logback和Log4j2之间的关系及其性能对比。SLF4J作为一个日志抽象层,允许开发者使用统一的日志接口,而Log4j、Logback和Log4j2则是具体的日志实现框架。Log4j2在性能上优于Logback,推荐在新项目中使用。文章还详细说明了如何在Spring Boot项目中配置Log4j2和Logback,以及如何使用Lombok简化日志记录。最后,提供了一些日志配置的最佳实践,包括滚动日志、统一日志格式和提高日志性能的方法。
4607 31
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板

推荐镜像

更多