最近在Solaris 10上安装Oracel 11G,在系统安装和数据库安装配置上都没有问题,当数据库安装完成后查看数据库状态的时候出现如下问题:

ORA-27102: out of memory Solaris-AMD64 
Error: 22: Invalid argument
Starting ORACLE instance (normal)WARNING: The system does not seem to be configured
optimally. Creating a segment of size 0x00000000cd003000 failed. Please change the shm parameters so that a segment can be created for this size. While this is not a fatal issue, creating one segment may improve performance

其中0x00000000cd003000即为我在系统环境变量设置的max-shm-memory大小的十六进制数,通过更改系统max-shm-memory的变量值可解决。

projmod -sK "project.max-shm-memory=(privileged,6G,deny)"  user.oracle
-bash-3.2$ projects -l user.oracle
user.oracle
        projid : 101
        comment: ""
        users  : oracle
        groups : (none)
        attribs: process.max-sem-nsems=(privileged,256,deny)
                 project.max-sem-ids=(privileged,100,deny)
                 project.max-shm-ids=(privileged,100,deny)
                 project.max-shm-memory=(privileged,6442450944,deny)

系统重新启动后手动启动数据库即可

SQL> startup
ORACLE instance started.
Total System Global Area 3423965184 bytes
Fixed Size                  2215824 bytes
Variable Size            1879048304 bytes
Database Buffers         1526726656 bytes
Redo Buffers               15974400 bytes
Database mounted.
Database opened.
SQL> select status from V$instance;
STATUS
------------
OPEN


具体参考资料如下:https://blogs.oracle.com/mandalika/entry/oracle_on_solaris_10_fixing