oracle-SCN系统改变号

SCN

system change number

我们看到的SCN是一串数字,由时间经过函数算出的,其实就是时间。但时间的比较复杂,不如转换成数字比较。

给一个日志加scn号,其实就是给日志加上时间点。

2常见的SCN

对于scn的理解

控制文件中有两个scn,开始和结束,数据文件头部也有一个scn号。

当数据库正常运行时,控制文件的开始scn号和数据文件的scn号一直,结束scn号为空。当正常关闭数据库时,三个号统一一致。

当非正常关闭时,结束scn号未被写入,再启动数据库时,由于结束scn号为空,数据库知道异常关闭,则会进行实例异常恢复。

在日志文件中,每一条日志都有scn号,而且日志循序写的。同时每个日志块在头部也有开始scn号和nextscn号。

inactive是表示buffer pool脏块写进磁盘去,可以被覆盖。

active表示buffer pool脏块还没写进磁盘去,不可以被覆盖,实例恢复需要。

current表示当前所用的日志文件。

所以系统和文件的SCN是与最老的 active的日志的first的SCN一致的。

具体的实例恢复,还得定位到最老的*active的日志里面的LRBA的具体日志。

相关推荐
aisifang00几秒前
企业级GPT-Image2实战测评:从生成到生产
大数据·数据库·人工智能
TO_WebNow6 分钟前
MySQL 索引的相关知识
数据库·mysql
神明9316 分钟前
如何处理ORA-01152报错_恢复未完成导致的数据文件仍需介质恢复
jvm·数据库·python
许长安7 分钟前
Redis 跳表实现详解
数据库·c++·经验分享·redis·笔记·缓存
m0_596749098 分钟前
mysql如何导出特定条件的查询数据_使用mysqldump加where参数
jvm·数据库·python
赢乐31 分钟前
大模型学习笔记:LangChain核心组件-记忆(memory)
数据库·langchain·长短时记忆网络·长期记忆·短期记忆·智能体agent·记忆(memory)
jieyucx41 分钟前
Go语言通透教程:结构体定义与方法
服务器·数据库·golang·结构体
m0_690825821 小时前
c++ RAII机制详解 c++如何利用RAII管理资源
jvm·数据库·python
JunLa1 小时前
L angGraph vs 链式调用
java·网络·数据库
DianSan_ERP1 小时前
抖店订单接口中消费者信息加密解密机制与安全履约全解析
前端·网络·数据库·后端·安全·团队开发·运维开发