Oracle 12c SCN推进方法汇总(三)之BBED

来源:这里教程网 时间:2026-03-03 16:26:01 作者:

1,查看当前SCN

约1000W 将数据文件加入bbed filelist

SQL> select current_scn from v$database;
CURRENT_SCN
-----------
   10108366
SQL> select file#,name from v$datafile;
     FILE# NAME
---------- ----------------------------------------------------------------------
         1 /u01/app/oracle/oradata/HKORA/datafile/o1_mf_system_hvylgglt_.dbf
         2 /u01/app/oracle/oradata/HKORA/datafile/o1_mf_ccps_par_hvylxqds_.dbf
         3 /u01/app/oracle/oradata/HKORA/datafile/o1_mf_sysaux_hvyljhvm_.dbf
         4 /u01/app/oracle/oradata/HKORA/datafile/o1_mf_undotbs1_hvylkm58_.dbf
         5 /u01/app/oracle/oradata/HKORA/datafile/o1_mf_ccps_dat_hvylxl03_.dbf
         7 /u01/app/oracle/oradata/HKORA/datafile/o1_mf_users_hvylkn9k_.dbf
         8 /u01/app/oracle/oradata/HKORA/datafile/o1_mf_ccps_inx_hvylxwwz_.dbf
         9 /u01/app/oracle/oradata/HKORA/datafile/o1_mf_devin_hwyb1byq_.dbf
8 rows selected.

2,bbed修改bas为2000W

这里数据文件不多,直接手动修改了,数据文件多的话可以写个脚本批量修改。

BBED> p kcvfh.kcvfhckp
struct kcvfhckp, 36 bytes              @484     
   struct kcvcpscn, 8 bytes            @484     
      ub4 kscnbas                @484      0x009a3beb
      ub2 kscnwrp                @488      0x8000
      ub2 kscnwrp2                @490      0x0000
   ub4 kcvcptim                   @492      0x3f61df56
   ub2 kcvcpthr                   @496      0x0001
   union u, 12 bytes               @500     
      struct kcvcprba, 12 bytes        @500     
         ub4 kcrbaseq             @500      0x00000001
         ub4 kcrbabno             @504      0x00000b8b
         ub2 kcrbabof             @508      0x0010
   ub1 kcvcpetb[0]                 @512      0x02
   ub1 kcvcpetb[1]                 @513      0x00
   ub1 kcvcpetb[2]                 @514      0x00
   ub1 kcvcpetb[3]                 @515      0x00
   ub1 kcvcpetb[4]                 @516      0x00
   ub1 kcvcpetb[5]                 @517      0x00
   ub1 kcvcpetb[6]                 @518      0x00
   ub1 kcvcpetb[7]                 @519      0x00
BBED> assign dba 1,1 kcvfh.kcvfhckp.kcvcpscn.kscnbas  = 20000000
Warning: contents of previous BIFILE will be lost. Proceed? (Y/N) y
ub4 kscnbas                                 @484      0x01312d00
BBED> assign dba 2,1 kcvfh.kcvfhckp.kcvcpscn.kscnbas  = 20000000
ub4 kscnbas                                 @484      0x01312d00
BBED> assign dba 3,1 kcvfh.kcvfhckp.kcvcpscn.kscnbas  = 20000000
ub4 kscnbas                                 @484      0x01312d00
BBED> assign dba 4,1 kcvfh.kcvfhckp.kcvcpscn.kscnbas  = 20000000
ub4 kscnbas                                 @484      0x01312d00
BBED> assign dba 5,1 kcvfh.kcvfhckp.kcvcpscn.kscnbas  = 20000000
ub4 kscnbas                                 @484      0x01312d00
BBED> assign dba 6,1 kcvfh.kcvfhckp.kcvcpscn.kscnbas  = 20000000
BBED-00205: illegal or out of range DBA (File 6, Block 1)
BBED> assign dba 7,1 kcvfh.kcvfhckp.kcvcpscn.kscnbas  = 20000000
ub4 kscnbas                                 @484      0x01312d00
BBED> assign dba 8,1 kcvfh.kcvfhckp.kcvcpscn.kscnbas  = 20000000
ub4 kscnbas                                 @484      0x01312d00
BBED> assign dba 9,1 kcvfh.kcvfhckp.kcvcpscn.kscnbas  = 20000000
ub4 kscnbas                                 @484      0x01312d00
BBED> sum apply dba 1,1
Check value for File 1, Block 1:
current = 0x3a60, required = 0x3a60
BBED> sum apply dba 2,1
Check value for File 2, Block 1:
current = 0x06ed, required = 0x06ed
BBED> sum apply dba 3,1
Check value for File 3, Block 1:
current = 0xb96a, required = 0xb96a
BBED> sum apply dba 4,1
Check value for File 4, Block 1:
current = 0x7de3, required = 0x7de3
BBED> sum apply dba 5,1
Check value for File 5, Block 1:
current = 0xa6e2, required = 0xa6e2
BBED> sum apply dba 7,1
Check value for File 7, Block 1:
current = 0xaa1d, required = 0xaa1d
BBED> sum apply dba 8,1
Check value for File 8, Block 1:
current = 0x0b9f, required = 0x0b9f
BBED> sum apply dba 9,1
Check value for File 9, Block 1:
current = 0x05f5, required = 0x05f5

FLUSH BUFFER CHACHE

SQL> alter system flush buffer_cache;
System altered.
SQL> alter system checkpoint;
System altered.
SQL> select checkpoint_change# from v$datafile_header;
CHECKPOINT_CHANGE#
------------------
          20000000
          20000000
          20000000
          20000000
          20000000
          20000000
          20000000
          20000000
8 rows selected.
SQL> select current_scn from v$database;
CURRENT_SCN
-----------
   20100494

SCN修改成功

相关推荐