ORA-01034 && ORA-27101

今天在做oracle数据库备库搭建时出现了如下的报错信息:


Error: ORA-01034: ORACLE not available。
ERROR:
ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux-x86_64 Error: 2: No such file or directory
Process ID: 0
Session ID: 0 Serial number: 0


这个问题的发生场景:搭建备库恢复数据完成后,将备库启动为mounted状态,在主库的dg broker中配置,add database 会报如下错误信息:


DGMGRL> add database teststd as connect identifier is teststd maintained as physical;
Error: ORA-01034: ORACLE not available
在工具plsql developer中做新备库的登录测试,结果显示:
ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux-x86_64 Error: 2: No such file or directory
Process ID: 0
Session ID: 0 Serial number: 0


但是此时数据库已经在mounted状态,并且检查了sga,pga,hugepagesize的设置,并无异常。

最后发现问题的原因是:环境变量设置的ORACLE_HOME和监听文件listener.ora文件中的ORACLE_HOME不一致导致的。

新备库的监听文件如下:


LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = oracle_standby_test)(PORT = 1521))
    )
  )
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (GLOBAL_DBNAME = test)
      (ORACLE_HOME = /home/U01/app/oracle/product/11.2.0.4)
      (SID_NAME = test)
    )
  )


新备库的.bash_profile文件如下:


export PATH
export ORACLE_BASE=/U01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0.4

....


可以看到bash_profile里面指定的ORACLE_HOME和listener.ora中的不一致,即便我们已经设置了/U01/  /home/U01的软连接了。

最后修改一致后,问题解决。

发布了29 篇原创文章 · 获赞 9 · 访问量 8117
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览