连接到Oracle数据库时发生JAVA错误

连接到Oracle数据库时发生JAVA错误,oracle,jdbc,Oracle,Jdbc,我们在服务器上安装了oracle数据库,并安装了oracle data guard。另一台服务器有一个java应用程序,它使用java瘦客户端连接到DB。有时应用程序运行平稳,但有时会出现以下错误: java.sql.SQLException: ORA-01034: ORACLE not available ORA-27101: shared memory realm does not exist Linux-x86_64 Error: 2: No such file or directory

我们在服务器上安装了oracle数据库,并安装了oracle data guard。另一台服务器有一个java应用程序,它使用java瘦客户端连接到DB。有时应用程序运行平稳,但有时会出现以下错误:

java.sql.SQLException: ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux-x86_64 Error: 2: No such file or directory

        at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:189)
        at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:242)
        at oracle.jdbc.ttc7.O3log.receive1st(O3log.java:430)
        at oracle.jdbc.ttc7.TTC7Protocol.logon(TTC7Protocol.java:257)
        at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:374)
        at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:515)
        at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:345)
        at java.sql.DriverManager.getConnection(DriverManager.java:582)
        at java.sql.DriverManager.getConnection(DriverManager.java:185)

我们找不到任何问题。我们的数据库从未停止,因为JAVA错误表示oracle不可用。我对数据保护知之甚少。这是否发生在data guard上?请帮助我确定问题。

是否可能重复?如果此错误是间歇性的(大多数情况下有效,有时失败,自行恢复),则不会重复。@Ben-->不是同一个bro。因为它有时有效,有时无效。@Shariarmtiaz你确定甲骨文没有被篡改吗?我刚才也有同样的问题。我们的软件与另一家公司维护的Oracle数据库通信。我们从未找到完整的原因,但运算符运行了使数据库处于断开连接状态的操作。@Ben-->请查看v$instance的输出。实例名称主机名称启动时间状态XXXXX XXX-152 2015年4月15日10:50:14上午开放
Mon Jan 25 16:44:34 2016
Archived Log entry 3075641 added for thread 1 sequence 1716926 ID 0xc3878ebb dest 1:
Mon Jan 25 16:44:34 2016
TT00: Standby redo logfile selected for thread 1 sequence 1716927 for destination LOG_ARCHIVE_DEST_2
Thread 1 advanced to log sequence 1716928 (LGWR switch)
  Current log# 7 seq# 1716928 mem# 0: /redo/oracle/inpaths/redo07.log
Mon Jan 25 16:46:04 2016
Archived Log entry 3075643 added for thread 1 sequence 1716927 ID 0xc3878ebb dest 1:
Mon Jan 25 16:46:04 2016
TT00: Standby redo logfile selected for thread 1 sequence 1716928 for destination LOG_ARCHIVE_DEST_2
Mon Jan 25 16:46:06 2016
Thread 1 advanced to log sequence 1716929 (LGWR switch)
  Current log# 4 seq# 1716929 mem# 0: /redo/oracle/inpaths/redo04.log
Mon Jan 25 16:46:22 2016
TT00: Standby redo logfile selected for thread 1 sequence 1716929 for destination LOG_ARCHIVE_DEST_2
Mon Jan 25 16:46:23 2016
Archived Log entry 3075646 added for thread 1 sequence 1716928 ID 0xc3878ebb dest 1:
Mon Jan 25 16:46:28 2016
Thread 1 advanced to log sequence 1716930 (LGWR switch)
  Current log# 5 seq# 1716930 mem# 0: /redo/oracle/inpaths/redo05.log
Mon Jan 25 16:46:29 2016
TT00: Standby redo logfile selected for thread 1 sequence 1716930 for destination LOG_ARCHIVE_DEST_2
Mon Jan 25 16:46:29 2016
Archived Log entry 3075648 added for thread 1 sequence 1716929 ID 0xc3878ebb dest 1:
Mon Jan 25 16:46:30 2016
Using deprecated SQLNET.ALLOWED_LOGON_VERSION parameter.
Using deprecated SQLNET.ALLOWED_LOGON_VERSION parameter.
Mon Jan 25 16:46:32 2016
Thread 1 advanced to log sequence 1716931 (LGWR switch)
  Current log# 6 seq# 1716931 mem# 0: /redo/oracle/inpaths/redo06.log
Mon Jan 25 16:46:32 2016
TT00: Standby redo logfile selected for thread 1 sequence 1716931 for destination LOG_ARCHIVE_DEST_2
Mon Jan 25 16:46:32 2016
Archived Log entry 3075650 added for thread 1 sequence 1716930 ID 0xc3878ebb dest 1: