重做日志是否存储所有应用于数据库缓冲区高速缓存的更改?

问题描述 投票:0回答:1

我知道重做日志条目是在发生插入/更新/删除/创建/删除/更改时创建的。什么信息存储在重做日志中?万一实例失败,重做日志文件用于恢复数据库,它是否包含有关应用数据库缓冲区高速缓存的更改的信息?

oracle database-performance sqlperformance sql-tuning
1个回答
0
投票

如果进行重做日志挖掘(以准确查看重做日志中的内容),那么将有一个视图告诉您它们存储的内容:V $ LOGMNR_CONTENTS。

通常显示:

- Operation: INSERT, UPDATE, DELETE, or DDL
- SCN - system change number - very important for recovery
- The transaction to which a change belongs
- The table and schema name of the modified object
- The name of the user who issued the DDL or DML
- the SQL needed to redo and/or undo your changes.

因此,重做日志包含提交脏缓冲区时所做的更改。它们用于在发生故障的情况下重建数据库。它们还可以保护回滚数据,因为用于重做和撤消的SQL都可以存储并在恢复期间进行回放。

V $ LOG和V $ LOGFILE显示了如何分配重做数据文件。通常,您希望成对使用它们,因为如果有一个备份,则可以进行备份。您还希望至少有3个组(对),因为一些是活动的,一些是最新的,并且一些正在被写入归档日志,这对于恢复也很重要。]

© www.soinside.com 2019 - 2024. All rights reserved.