`

SCN,RBA,ROWID

 
阅读更多
SCN=系统便更号
共两部分占6个字节:2字节Wrap进位制+4字节Base底值

SCN:0xffff.ffffffff 的形式出现。如:0x0000.000fd213

通常是 SCN:SEQ = 数据块版本号 其范围是1-254
如:SCN:0x0000.000fd213 SEQ:1

含义是:表示一个时间的递增。因为不能用OS的系统时间和硬件时间。


RBA=重做字节地址 
由四个部分组成占10个字节组成:日志线程号+日志序列号+日志文件块编号+日志文件块字节偏移量

通常是 RBA=Thread:n RBA:0xffffff.ffffffff.ffff的形式出现
如: Thread:2 RBA:0x000014.00000003.0010 这个是16进制的。

含义是:线程2在序列号为20号的重做日志文件的第3个数据块的第16个字节处。



ROWID = 数据记录的物理地址
按BASE64的形式表示
如ROWID=AAAR5pAAFAAAADPAAA
的 前6位=AAAR5p(73321)表示的是段编号
   后3位=AAF(5)表示的是数据文件编号
   后6位=AAAADP(207)表示的是该文件的数据块编号
   后3位=AAA(0)表示的是行号

其含义是:这条记录保存在了5号数据文件的第207号数据块的第1行里面。

BASE64是这么排的:


内容:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/
编号:01234.........................................................63

这么算的 AAAADP = DP = 3*64+15 = 192+15 = 207 这个是64进制的。

可以通过下面的内容来得到.


create table t(id number(12));commit;

create or replace procedure t_insert
as
begin

    for i in 1..200 loop
        insert into t(id) values(1);
    end loop;

end t_insert;

call t_insert();

select rowid,id from t;

ROWID                     ID
------------------     -----
AAAn+PAAGAAN+lsAAA	1
AAAn+PAAGAAN+lsAAB	1
AAAn+PAAGAAN+lsAAC	1
AAAn+PAAGAAN+lsAAD	1
AAAn+PAAGAAN+lsAAE	1
AAAn+PAAGAAN+lsAAF	1
AAAn+PAAGAAN+lsAAG	1
AAAn+PAAGAAN+lsAAH	1
AAAn+PAAGAAN+lsAAI	1
AAAn+PAAGAAN+lsAAJ	1
AAAn+PAAGAAN+lsAAK	1
AAAn+PAAGAAN+lsAAL	1
AAAn+PAAGAAN+lsAAM	1
AAAn+PAAGAAN+lsAAN	1
AAAn+PAAGAAN+lsAAO	1
AAAn+PAAGAAN+lsAAP	1
AAAn+PAAGAAN+lsAAQ	1
AAAn+PAAGAAN+lsAAR	1
AAAn+PAAGAAN+lsAAS	1
AAAn+PAAGAAN+lsAAT	1
AAAn+PAAGAAN+lsAAU	1
AAAn+PAAGAAN+lsAAV	1
AAAn+PAAGAAN+lsAAW	1
AAAn+PAAGAAN+lsAAX	1
AAAn+PAAGAAN+lsAAY	1
AAAn+PAAGAAN+lsAAZ	1
AAAn+PAAGAAN+lsAAa	1
AAAn+PAAGAAN+lsAAb	1
AAAn+PAAGAAN+lsAAc	1
AAAn+PAAGAAN+lsAAd	1
AAAn+PAAGAAN+lsAAe	1
AAAn+PAAGAAN+lsAAf	1
AAAn+PAAGAAN+lsAAg	1
AAAn+PAAGAAN+lsAAh	1
AAAn+PAAGAAN+lsAAi	1
AAAn+PAAGAAN+lsAAj	1
AAAn+PAAGAAN+lsAAk	1
AAAn+PAAGAAN+lsAAl	1
AAAn+PAAGAAN+lsAAm	1
AAAn+PAAGAAN+lsAAn	1
AAAn+PAAGAAN+lsAAo	1
AAAn+PAAGAAN+lsAAp	1
AAAn+PAAGAAN+lsAAq	1
AAAn+PAAGAAN+lsAAr	1
AAAn+PAAGAAN+lsAAs	1
AAAn+PAAGAAN+lsAAt	1
AAAn+PAAGAAN+lsAAu	1
AAAn+PAAGAAN+lsAAv	1
AAAn+PAAGAAN+lsAAw	1
AAAn+PAAGAAN+lsAAx	1
AAAn+PAAGAAN+lsAAy	1
AAAn+PAAGAAN+lsAAz	1
AAAn+PAAGAAN+lsAA0	1
AAAn+PAAGAAN+lsAA1	1
AAAn+PAAGAAN+lsAA2	1
AAAn+PAAGAAN+lsAA3	1
AAAn+PAAGAAN+lsAA4	1
AAAn+PAAGAAN+lsAA5	1
AAAn+PAAGAAN+lsAA6	1
AAAn+PAAGAAN+lsAA7	1
AAAn+PAAGAAN+lsAA8	1
AAAn+PAAGAAN+lsAA9	1
AAAn+PAAGAAN+lsAA+	1
AAAn+PAAGAAN+lsAA/	1
AAAn+PAAGAAN+lsABA	1
AAAn+PAAGAAN+lsABB	1
AAAn+PAAGAAN+lsABC	1
AAAn+PAAGAAN+lsABD	1
AAAn+PAAGAAN+lsABE	1
AAAn+PAAGAAN+lsABF	1
AAAn+PAAGAAN+lsABG	1
AAAn+PAAGAAN+lsABH	1
AAAn+PAAGAAN+lsABI	1
AAAn+PAAGAAN+lsABJ	1
AAAn+PAAGAAN+lsABK	1
AAAn+PAAGAAN+lsABL	1
AAAn+PAAGAAN+lsABM	1
AAAn+PAAGAAN+lsABN	1
AAAn+PAAGAAN+lsABO	1
AAAn+PAAGAAN+lsABP	1
AAAn+PAAGAAN+lsABQ	1
.....




分享到:
评论

相关推荐

    个人经验总结:Oracle数据库SCN号详解

    Oracle数据库SCN号详解 系统检查点scn) 数据文件检查点(v$datafile) 数据文件终止scn) 数据文件中存放的检查点 启动scn

    oracle scn概念解析

    oracle scn分析及概念解释,及各种scn的查询sql语句

    oracle patch scn--修改oracle scn工具(oracle异常恢复利器)

    oracle scn修改工具,可以直接修改oracle scn,在极端情况下恢复使用,比如解决ORA-600 2662等类似错误,使用说明:https://www.xifenfei.com/2022/06/win-oracle-scn-patch.html

    随机配置网络SCN实现的matlab代码——亲测可用

    随机配置网络SCN实现的matlab代码——亲测可用

    oracle scn

    oracle scnOracle_SCN三篇文章Oracle_SCN三篇文章

    ORACLE SCN问题解析

    在某些环境下,程序bug会引起ORACLE数据库SCN的异常增长,超出ORACLE设定的合理范围,该事件很可能导致宕机,并且由于企业内部存在众多的分布式事务,引起SCN的剧烈增长很容易出现扩散现象,导致更多的数据库宕机。...

    SCN号的闪回

    SCN号的闪回

    数据库SCN 监控-new.txt

    Oracle 数据库在2019年 6月23日自动生效了新的SCN 生成的量由以前的16K 涨导 32K,但还是没有根本上解决问题,历史遗留问题还有可能发生,所以我们需要继续监控数据库 SCN 问题

    Oracle SCN机制解析

    SCN(System Chang Number)作为oracle中的一个重要机制,在数据恢复、Data Guard、Streams复制、RAC节点间的同步等各个功能中起着重要作用。理解SCN的运作机制,可以帮助你更加深入地了解上述功能。

    数据库SCN 监控SQL.txt

    针对Oracle 在 2019年 6月23日后,新SCN 策略生效后,我们开始对数据库 Oracle scn 监控

    PCB设计 SCN-2-19 AD封装.zip PCB设计 SCN-2-19 AD封装.zip

    PCB设计 SCN-2-19 AD封装PCB设计 SCN-2-19 AD封装PCB设计 SCN-2-19 AD封装PCB设计 SCN-2-19 AD封装PCB设计 SCN-2-19 AD封装PCB设计 SCN-2-19 AD封装PCB设计 SCN-2-19 AD封装PCB设计 SCN-2-19 AD封装PCB设计 SCN-2-19...

    SCN_release_v1_随机配置网络_SCN_

    随机配置网络SCN源程序,可以很容易的修改成自己的应用。

    Oracle系统改变号SCN详解

    Oracle系统改变号SCN详解.docx

    ARkit自定义,包含scn图片

    ARkit自定义实现,包含多个scn图片,自行下载。ARKit平台上的作品不光是视觉上的提升,对于开发者来说,更容易操作。这里一定要注意,开发环境为Xcode 9, 运行环境是iphone 6s及以上设备,系统是iOS11。

    oracle SCN 祥解

    本文档主要对oracle中的scn相关概念作了详细的介绍何解释。 值得深入学习。

    ASIO4ALL_2_10_SCN

    ASIO4ALL_2_10_SCN

    ORACLE SCN异常增长处理

    福建电脑期刊2013年第2期的一篇论文 oracle scn增长过快问题研究和解决方案探索 易金旭

    修改oracle scn小工具(patch scn)

    在一些情况下(特别是一些数据库非常规恢复场景中),需要修改oracle scn绕过一些错误,让数据库open成功,在以前的版本中我们可以通过event,隐含参数,oradebug等方法进行修改,在一些较新的版本中这些方法都被oracle屏蔽,...

    SCN

    描述: webwork-2.1.7.jar 修改: package com.opensymphony.webwork.interceptor.FileUploadInterceptor 类line88 to line 93 修复bug:upload empty file cause nullponit exception ...

Global site tag (gtag.js) - Google Analytics