联系:手机/微信(+86 17813235971) QQ(107644445)
作者:惜分飞©版权所有[未经本人同意,不得以任何形式转载,否则有进一步追究法律责任的权利.]
有朋友找到我,反馈说数据库登录报ORA-600 6807错误,希望我们给予解决
对于该错误有过一定的了解,一般是seq问题,这里报错比较明显是由于audses$序列出现问题导致数据库无法正常登录(因为数据库启动了审计,在登录之时会触发insert aud$操作,这个操作包含了audses$这个序列的调用,在调用这个序列的时候出现问题从而引起该问题),对其system数据文件dbv检查
比较明显有一个block被标记为坏块,通过对该block进行分析,确认刚好是seq$对象
DUL> rdba 4195465 rdba : 0x00400489=4195465 rfile# : 1 block# : 1161 DUL> desc sys.seq$ Object ID:100 Storage(Obj#=100 DataObj#=100 TS#=0 File#=1 Block#=1160 Cluster=0) NO. SEG INT Column Name Null? Type --- --- --- ------------------------------ --------- ------------------------------ 1 1 1 OBJ# NOT NULL NUMBER 2 2 2 INCREMENT$ NOT NULL NUMBER 3 3 3 MINVALUE NUMBER 4 4 4 MAXVALUE NUMBER 5 5 5 CYCLE# NOT NULL NUMBER 6 6 6 ORDER$ NOT NULL NUMBER 7 7 7 CACHE NOT NULL NUMBER 8 8 8 HIGHWATER NOT NULL NUMBER 9 9 9 AUDIT$ NOT NULL VARCHAR2(38) 10 10 10 FLAGS NUMBER 11 11 11 PARTCOUNT NUMBER DUL> dump datafile 1 block 1160 Block Header: block type=0x10 (data segment header block (unlimited extents)) block format=0xa2 (oracle 10+) block rdba=0x00400488 (file#=1, block#=1160) scn=0x0000.001a3fcd, seq=2, tail=0x3fcd1002 block checksum value=0xe280=57984, flag=4 Data Segment Header: Extent Control Header ------------------------------------------------------------- Extent Header:: extents: 1 blocks: 7 last map: 0x00000000 #maps: 0 offset: 4128 Highwater:: 0x0040048d (rfile#=1,block#=1165) ext#: 0 blk#: 4 ext size:7 #blocks in seg. hdr's freelists: 1 #blocks below: 4 mapblk: 0x00000000 offset: 0 Map Header:: next: 0x00000000 #extents: 1 obj#: 100 flag: 0x40000000 Extent Control Header ------------------------------------------------------------- 0x00400489 length: 7 nfl = 1, nfb = 1, typ = 1, nxf = 0, ccnt = 4 SEG LST:: flg: USED lhd: 0x0040048c ltl: 0x0040048c DUL> rdba 0x00400489 rdba : 0x00400489=4195465 rfile# : 1 block# : 1161 DUL>
通过修复使用我们的Oracle recovery tools小工具,或者参考:校验代码为 6054 坏块故障修复进行修复,然后数据库用户可以正常登录