oracle 9i中修改spfile中的db_block_buffers参数后,数据库启动不起来,报ora-00381错误
服务器为win2003
越详细越好,在线等
谢谢各位大虾

解决方案 »

  1.   

    Spfile 是二进制文件不可以直接编辑可以通过重新建立pfile文件
    Create pfile=’D:\oracle\ora92\database\pfilegis696.ora’
    From spfile=’D:\oracle\ora92\database\spfilegis696.ora’
    Shutdown immediate

    然后在从pfile启动
    Startup pfile=’D:\oracle\ora92\database\pfilegis696.ora’
    如果你在关闭数据库的发现数据库启动的时候你不指定从 pfile中启动的话就启动不起来了
    这是由于数据库本身的机制决定的
    数据库启动时默认的情况下找到spfile 启动数据库的
    要想不要每次启动都麻烦的用pfile启动的话
    就要重新建立spile文件在这之前你可以改回参数 为正确的配置 比如你的db_block_buffers改大还是小的话你自己怎么操作的应该知道(直接改PFILE)
    方法:
    Create spfile=’D:\oracle\ora92\database\spfilegis696.ora’
    From pfile=’D:\oracle\ora92\database\pfilegis696.ora’
    Startup

    即可
      

  2.   

    查一下,是不是在init.ora这个文件中?改回原值并保存,重启一下。
      

  3.   

    看你结贴率还是蛮高的pfile启动就要改回真确的配置了不改的话从PFILE也不能启动
      

  4.   

    在哪里进行创建create spfile 
      

  5.   

    c:\>sqlplus /nologsql>connect / as sysdba
    sql>create pfile='c:\pfile.ora' from spfile;
    --修改pfile里面的参数
    sql>create spfile from pfile = 'c:\pfile.ora';
      

  6.   

    谢谢各位大虾,直接进去splplus worksheet中
    执行 
    create spfile from pfile ='e:\oracle\admin\zmpro\pfile\init.ora';
    startup;
    即可启动了 
    之后又修改了其参数如:
    alter system set db_cache_size=64m scope=spfile;shutdown immediate ;
    startup;
    ---------------------
    已连接到空闲例程。
    ORACLE 例程已经启动。Total System Global Area  177281688 bytes
    Fixed Size                   453272 bytes
    Variable Size             109051904 bytes
    Database Buffers           67108864 bytes
    Redo Buffers                 667648 bytes
    数据库装载完毕。
    数据库已经打开。
    已连接。