zoukankan      html  css  js  c++  java
  • 测试修改DBID手记

    目标:将测试库的DBID改为 903834600
    本文相关内容参考 http://space.zdnet.com.cn/html/80/289380-1685934.html

    c>set oracle_sid=ibm
    c>sqlplus /nolog
    SQL>connect / as sysdba
    Connected.
    SQL>
    SQL>@C:\oracle\product\10.2.0\db_1\RDBMS\ADMIN/dbmsbkrs.sql

    SQL> select dbid from v$database;

          DBID
    ----------
    979095573


    SQL> exec dbms_backup_restore.nidbegin('ibm','IBM','903834600','979095573',0,0,10);
    (注意:上句的第二个 IBM (SID)必须大写,否则会出现600错误)

    SQL> variable a number;
    SQL> variable b number;
    SQL> variable c number;
    SQL> exec dbms_backup_restore.nidprocessdf(0,0,:a,:b,:c);

    SQL> exec dbms_backup_restore.nidprocesscf(:a,:b);

    SQL> exec dbms_backup_restore.nidend;

    SQL> select dbid from v$database;

          DBID
    ----------
    903834600

    到此,eygle认为DBID修改已经成功,但是,当你重新startup数据库时,会报错误,如下过程

    SQL> shutdown immediate
    SQL> startup
    ORACLE instance started.

    Total System Global Area  612368384 bytes
    Fixed Size                  2056864 bytes
    Variable Size             180358496 bytes
    Database Buffers          423624704 bytes
    Redo Buffers                6328320 bytes
    Database mounted.
    ORA-01589: must use RESETLOGS or NORESETLOGS option for database open


    SQL> recover database using backup controlfile until cancel;
    ORA-00279: change 606898 generated at 07/09/2009 16:56:55 needed for thread 1
    ORA-00289: suggestion :
    C:\ORACLE\PRODUCT\10.2.0\DB_1\RDBMS\ARC00002_0691779161.001
    ORA-00280: change 606898 for thread 1 is in sequence #2


    Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
    auto

    ORA-00308: cannot open archived log
    'C:\ORACLE\PRODUCT\10.2.0\DB_1\RDBMS\ARC00002_0691779161.001'
    ORA-27041: unable to open file
    OSD-04002: unable to open file
    O/S-Error: (OS 2) The system cannot find the file specified.

    SQL> recover database using backup controlfile until cancel;
    ORA-00279: change 606898 generated at 07/09/2009 16:56:55 needed for thread 1
    ORA-00289: suggestion :
    C:\ORACLE\PRODUCT\10.2.0\DB_1\RDBMS\ARC00002_0691779161.001
    ORA-00280: change 606898 for thread 1 is in sequence #2


    Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
    F:\IBM\ONLINELOG\O1_MF_1_55CCYS98_.LOG

    ORA-00309: log belongs to wrong database
    ORA-00334: archived log: 'F:\IBM\ONLINELOG\O1_MF_3_55CCYVRW_.LOG'


    ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below
    ORA-01194: file 1 needs more recovery to be consistent
    ORA-01110: data file 1: 'F:\IBM\DATAFILE\O1_MF_SYSTEM_55CCSKSD_.DBF'

    SQL> recover database using backup controlfile until cancel;
    ORA-00279: change 606898 generated at 07/09/2009 16:56:55 needed for thread 1
    ORA-00289: suggestion :
    C:\ORACLE\PRODUCT\10.2.0\DB_1\RDBMS\ARC00002_0691779161.001
    ORA-00280: change 606898 for thread 1 is in sequence #2


    Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
    F:\IBM\ONLINELOG\O1_MF_2_55CCYTJM_.LOG

    ORA-00309: log belongs to wrong database
    ORA-00334: archived log: 'F:\IBM\ONLINELOG\O1_MF_3_55CCYVRW_.LOG'


    ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below
    ORA-01194: file 1 needs more recovery to be consistent
    ORA-01110: data file 1: 'F:\IBM\DATAFILE\O1_MF_SYSTEM_55CCSKSD_.DBF'


    SQL> recover database using backup controlfile until cancel;
    ORA-00279: change 606898 generated at 07/09/2009 16:56:55 needed for thread 1
    ORA-00289: suggestion :
    C:\ORACLE\PRODUCT\10.2.0\DB_1\RDBMS\ARC00002_0691779161.001
    ORA-00280: change 606898 for thread 1 is in sequence #2


    Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
    F:\IBM\ONLINELOG\O1_MF_3_55CCYVRW_.LOG
    ORA-00309: log belongs to wrong database
    ORA-00334: archived log: 'F:\IBM\ONLINELOG\O1_MF_3_55CCYVRW_.LOG'


    ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below
    ORA-01194: file 1 needs more recovery to be consistent
    ORA-01110: data file 1: 'F:\IBM\DATAFILE\O1_MF_SYSTEM_55CCSKSD_.DBF'


    SQL> alter system set undo_management='manual' scope=spfile;

    System altered.

    SQL> shutdown immediate;
    ORA-01109: database not open


    Database dismounted.
    ORACLE instance shut down.
    SQL> startup mount;
    ORACLE instance started.

    Total System Global Area  612368384 bytes
    Fixed Size                  2056864 bytes
    Variable Size             184552800 bytes
    Database Buffers          419430400 bytes
    Redo Buffers                6328320 bytes
    Database mounted.
    SQL> alter database open;
    alter database open
    *
    ERROR at line 1:
    ORA-01589: must use RESETLOGS or NORESETLOGS option for database open


    SQL> alter database open resetlogs;
    alter database open resetlogs
    *
    ERROR at line 1:
    ORA-01194: file 1 needs more recovery to be consistent
    ORA-01110: data file 1: 'F:\IBM\DATAFILE\O1_MF_SYSTEM_55CCSKSD_.DBF'


    SQL> recover database using backup controlfile;
    ORA-00279: change 606898 generated at 07/09/2009 16:56:55 needed for thread 1
    ORA-00289: suggestion :
    C:\ORACLE\PRODUCT\10.2.0\DB_1\RDBMS\ARC00002_0691779161.001
    ORA-00280: change 606898 for thread 1 is in sequence #2


    Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
    cancel
    Media recovery cancelled.
    SQL> alter database open resetlogs;
    alter database open resetlogs
    *
    ERROR at line 1:
    ORA-01113: file 1 needs media recovery
    ORA-01110: data file 1: 'F:\IBM\DATAFILE\O1_MF_SYSTEM_55CCSKSD_.DBF'


    SQL> alter system set "_allow_resetlogs_corruption"=true scope=spfile;

    System altered.

    SQL> shutdown immediate;
    ORA-01109: database not open


    Database dismounted.
    ORACLE instance shut down.
    SQL> startup mount;
    ORACLE instance started.

    Total System Global Area  612368384 bytes
    Fixed Size                  2056864 bytes
    Variable Size             188747104 bytes
    Database Buffers          415236096 bytes
    Redo Buffers                6328320 bytes
    Database mounted.
    SQL> recover database using backup controlfile;
    ORA-00279: change 606898 generated at 07/09/2009 16:56:55 needed for thread 1
    ORA-00289: suggestion :
    C:\ORACLE\PRODUCT\10.2.0\DB_1\RDBMS\ARC00002_0691779161.001
    ORA-00280: change 606898 for thread 1 is in sequence #2


    Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
    cancel
    Media recovery cancelled.
    SQL> alter database open resetlogs;
    alter database open resetlogs
    *
    ERROR at line 1:
    ORA-01092: ORACLE instance terminated. Disconnection forced


    SQL> connect sys as sysdba
    Enter password:
    Connected to an idle instance.
    SQL> startup
    ORACLE instance started.

    Total System Global Area  612368384 bytes
    Fixed Size                  2056864 bytes
    Variable Size             192941408 bytes
    Database Buffers          411041792 bytes
    Redo Buffers                6328320 bytes
    Database mounted.
    Database opened.
    SQL>

    将_allow_resetlogs_corruption"=true参数取消,undo_management 改为auto

    SQL> shutdown immediate;
    Database closed.
    Database dismounted.
    ORACLE instance shut down.
    SQL> startup
    ORACLE instance started.

    Total System Global Area  612368384 bytes
    Fixed Size                  2056864 bytes
    Variable Size             197135712 bytes
    Database Buffers          406847488 bytes
    Redo Buffers                6328320 bytes
    Database mounted.
    Database opened.
    SQL> select dbid from v$database;

          DBID
    ----------
     903834600

    DBID修改完成


     

  • 相关阅读:
    projecthashing
    Windows 环境 gRPC环境搭建
    gitlab 适配性问题
    对 Golang 简洁架构实战的理解,以及 Golang 开源项目包定义的解惑
    Golang 关于百分比,小数点为数的问题
    Golang net/http 库日常 http 请求操作
    解决mysql建立事件时出现 “Cannot proceed because system tables used by Event Scheduler were found damaged at server start” 的错误
    如何在Linux安装Wine
    Public key for *.rpm is not installed
    从 IClassFactory 为 CLSID 为 {AA40D1D6CAEF4A56B9BBD0D3DC976BA2} 的 COM 组件创建实例失败,原因是出现以下错误: c001f011。
  • 原文地址:https://www.cnblogs.com/kevinsun/p/1520055.html
Copyright © 2011-2022 走看看