connect / as sysdba后startup一切正常,但客户端怎么也登不上去,在Windows上用oracle client测试 报ERROR: ORA-01034: ORACLE not available ORA-27101: shared memory realm does not exist
开始以为是权限或网络问题,看交换机配置,搞了半天sqlnet.ora也没有效果。后来试着在AIX上 connect system/passwd,发现也出现一样的报错,这才知道是本地oracle的问题。
网上乱翻一通,有人说可能是listener.ora里的ORACLE_HOME和我本地的ORACLE_HOME不一致。我看了一下,果然listener.ora里面是这样写的: SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = PL***tProc) (ORACLE_HOME = /u01/oracle/product/9.2.0/) (PROGRAM = extproc) ) (SID_DESC = (GLOBAL_DBNAME = orcl) (ORACLE_HOME = /u01/oracle/product/9.2.0) (SID_NAME = orcl) ) )
而本地的$ORACLE_HOME=/u01/oracle/product/9.2.0/ 把listener.ora中的ORACLE_HOME加上斜杠后,问题解决!
现在一般都用10g,采用动态注册的比较多,不在listener.ora里面显式的写SID_LIST了,以后再遇到 这个问题的可能性应该不大。
|