貌似我的Oracle安装好了,可是就是找不到登陆用户:
操作步骤:
su - oracle
到Oracle用户下面,运行sqlplus "/as sysdab"提示信息是:
SQL*Plus:Release 10.2.0.1.0 - Production 哦你11 18 01:32:45 2009Copyright (c) 1982,2005,Oracle.All rights reserved.Connected to an idle instance.SQL>startup
ORA-00371:not enough shared pool memory,should be atleast 62198988 bytes.出现以上情况,共享内存问题怎么解决!?还有一个疑问是:操作到这种程度应该可以说明我的数据库安装成了,只是配置出问题是吗?哪位高手给我解决下疑问!谢谢了!

解决方案 »

  1.   

    发现一个地方的错误。
    sqlplus "/as sysdab
    应该是conn / as sysdba;
      

  2.   

    解决过程最麻烦的就是不能startup nomount,只能利用比较旧的pfile进行启动.SQL> startup nomount pfile='/ora/oracle/admin/sm/pfile/init.ora.632008194025';
    ORACLE instance started.Total System Global Area 1308622848 bytes
    Fixed Size                  1219232 bytes
    Variable Size             452986208 bytes
    Database Buffers          838860800 bytes
    Redo Buffers               15556608 bytesSQL> create pfile='/ora/oracle/admin/sm/pfile/init.ora.20090618' from spfile='/ora/oracle/product/10.2.0/db_1/dbs/spfilesm.ora';把spfile的文件恢复到pfile里进行修改,增大share pool的大小到300MSQL> shutdown immediate
    SQL> startup nomount pfile='/ora/oracle/admin/sm/pfile/init.ora.20090618';
    SQL> create spfile='/ora/oracle/product/10.2.0/db_1/dbs/spfilesm.ora' from pfile='/ora/oracle/admin/sm/pfile/init.ora.20090618';
    SQL> shutdown immediate
    SQL> startup
      

  3.   

    not enough shared pool memory,should be atleast 62198988 bytes
    估计是内存太小,是不是参数里面的processes太大了,导致无法启动
      

  4.   

    照着2楼的操作完成后,startup还是同样的错误啊!没有解决!不知道改怎么操作,而且shutdown immediate时候提示database not mounted
      

  5.   

    能到:ORACLE instance started.
    你的库已经装好了2楼的方法还不行的话,看下你的sga,pga的设置和你实际的物理内存是否不冲突,方法2楼的给过了
    有的话改过来,从pfile启动实例,重新生成一个spfile
    还有如果OS是linux系的话关注下
    kernel.shmmax 
    kernel.shmall
      

  6.   

    我安装的时候有报物理内存需求是922MB,但实际上只有500MB的物理内存的警告!没解决就直接安装了!我虚拟机内存为512MB,
    kernel.shmmax=1073741824 
    kernel.shmall=2097152
    这样应该没错吧!
      

  7.   

    ORA-00371:not enough shared pool memory,should be atleast 62198988 bytes. share pool 值太小了,在pfile里面修改大点,在用pfile启动下。具体参考2楼..也可以在pfile中增加sga_target,sga_max_size 2个参数,让数据自己来管理这些内存空间的大小.
     
      

  8.   

    我们一般在Linux 上安装设置Oracle 数据库或者在更换或升级硬件的时候都需要配置Linux 系统的核心参数, 然后才是调整Oracle 系统参数 。kernel.shmall为物理内存除以pagesize;
    kernel.shmmax为物理内存的一半;
    fs.file-max为512 乘以 processes (如128个process则为 65536);
    net.ipv4.ip_local_port_range/net.core.rmem_default/net.core.rmem_max三个参数设置和官方文档不一样, 这是根据metalink 343431.1 最新要求更改的;
    net.ipv4.tcp_rmem/net.ipv4.tcp_wmem两个参数一般情况下无需设置, 除非是在Dataguard/Streams等需很多网络传输情况下;
    其它参数根据官方文档要求设置即可.查看os系统页的大小
    #getconf PAGESIZE
    40961. Linux 系统下的核心参数:# vi /etc/sysctl.conf
    kernel.shmall = 2097152
    kernel.shmmax = 2147483648
    kernel.shmmni = 4096
    kernel.sem = 250 32000 100 128
    fs.file-max = 65536
    net.ipv4.ip_local_port_range = 9000 65000
    net.core.rmem_default = 4194304
    net.core.rmem_max = 4194304
    net.core.wmem_default = 262144
    net.core.wmem_max = 262144修改以后让参数生效:
    # /sbin/sysctl -p...... Linux 内核参数及Oracle相关参数调整
    http://blog.csdn.net/tianlesoftware/archive/2009/10/14/4668741.aspx
      

  9.   

    sorry, i have to enter english here.
    it's a simple error and you modify the parameter in the file init$ORACLE_SID.ora (the file you need to start the database. eg: /data01/rdbms/cortalBD/parameterfile/spfile$ORACLE_SID.ora, the name may be a little different).
    eg:
    # shared_pool_size = 67108864           # datewarehouse, transaction processing 
    shared_pool_size = 300000000           # datewarehouse, transaction processingYou can't generate the file /data01/rdbms/cortalBD/parameterfile/spfile$ORACLE_SID.ora directely, but you can generate it by another file.eg:enter in the base
    SQL>CREATE SPFILE='/data01/rdbms/$ORACLE_SID/parameterfile/spfile$ORACLE_SID.ora' FROM PFILE='/opt/oracle/se1srv/11.2.0/db1/srvm/admin/init.ora';if you don't understand still, gave me a message.