首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ORA-12545 : Oracle突然停止工作

ORA-12545 : Oracle突然停止工作
EN

Stack Overflow用户
提问于 2015-03-04 06:09:52
回答 2查看 3.2K关注 0票数 2

我有个令人困惑的问题。我在Linux上安装了一个Oracle 11g,运行良好。我能够使用基于SID的连接字符串(如

sqlplus myschema@192.168.184.102:1521:orcl

然后,由于某种莫名其妙的原因,它停止了工作。我不知道我或其他人扭动了什么。

现在我只能使用基于SERVICE_NAME或TNSNAME的方法远程连接

sqlplus myschema@192.168.184.102:1521/orcl

sqlplus myschema@ORCL

这两种方式都很好,但我有一些应用程序依赖于SID连接模式,我可以改变这种模式。某个善良的灵魂能帮我找出我错过了什么吗?

以下是我的配置:

LISTENER.ORA:

代码语言:javascript
复制
[oracle@dbora112 ~]$ cat  /opt/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
# listener.ora Network Configuration File: /opt/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
# Generated by Oracle configuration tools.

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = dbora112)(PORT = 1521))
    )
  )

ADR_BASE_LISTENER = /opt/u01/app/oracle

听众状态:

代码语言:javascript
复制
[oracle@dbora112 ~]$ lsnrctl status

LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 04-MAR-2015 14:50:05

Copyright (c) 1991, 2011, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 11.2.0.3.0 - Production
Start Date                04-MAR-2015 14:37:12
Uptime                    0 days 0 hr. 12 min. 52 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /opt/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
Listener Log File         /opt/u01/app/oracle/diag/tnslsnr/dbora112/listener/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=dbora112)(PORT=1521)))
Services Summary...
Service "orcl" has 1 instance(s).
  Instance "orcl", status READY, has 1 handler(s) for this service...
Service "orclXDB" has 1 instance(s).
  Instance "orcl", status READY, has 1 handler(s) for this service...
The command completed successfully

TNSNAMES.ORA:

代码语言:javascript
复制
[oracle@dbora112 ~]$ cat /opt/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora
# tnsnames.ora Network Configuration File: /opt/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.

ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.184.102)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SID = orcl)
    )
  )

LISTENER_ORCL =
  (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.184.102)(PORT = 1521))

SQLNET:

代码语言:javascript
复制
[oracle@dbora112 ~]$ cat /opt/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/sqlnet.ora
# sqlnet.ora Network Configuration File: /opt/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/sqlnet.ora
# Generated by Oracle configuration tools.

NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)

ADR_BASE = /opt/u01/app/oracle

可以使用TNS连接无问题。

代码语言:javascript
复制
[oracle@dbora112 ~]$ sqlplus schema/xxx@ORCL

SQL*Plus: Release 11.2.0.3.0 Production on Wed Mar 4 14:54:10 2015

Copyright (c) 1982, 2011, Oracle.  All rights reserved.


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL>

使用服务名称可以毫无问题地连接

代码语言:javascript
复制
[oracle@dbora112 ~]$ sqlplus schema/xxx@192.168.184.102/ORCL

SQL*Plus: Release 11.2.0.3.0 Production on Wed Mar 4 14:55:52 2015

Copyright (c) 1982, 2011, Oracle.  All rights reserved.


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL>

无法与SID连接

代码语言:javascript
复制
[oracle@dbora112 ~]$ sqlplus schema/xxx@192.168.184.102:orcl

SQL*Plus: Release 11.2.0.3.0 Production on Wed Mar 4 14:56:38 2015

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

ERROR:
ORA-12545: Connect failed because target host or object does not exist

数据库实例(SID)

代码语言:javascript
复制
SQL> select instance_name from v$instance;

INSTANCE_NAME
----------------
orcl
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-03-04 16:34:03

因为您可以使用TNS别名进行连接,并且在连接描述中使用了SID,所以SID正在工作。

但是您的EasyConnect字符串不正确。加上文件

简单或缩写的连接标识符具有以下语法: [//]host[:port][/service_name]

您不能使用SID和,只使用服务名称;因此,您的连接使用:

代码语言:javascript
复制
sqlplus schema/xxx@192.168.184.102:orcl

甚至是

代码语言:javascript
复制
sqlplus schema/xxx@192.168.184.102:1521:orcl

..。不可能起作用的。您可以使用旧的样式在JDBC中使用该表单:

代码语言:javascript
复制
jdbc:oracle:thin:@192.168.184.102:1521:orcl

..。但这与SQL*Plus连接不一样,尽管看起来很相似。

如果您试图检查该表单的JDBC连接是否正常工作,则不能使用SQL*Plus进行检查,但您的TNS别名检查正在验证它是否按照您的预期设置--只要它使用相同的主机、端口和SID。使用较新的JDBC语法可能更好,但从问题上看,您似乎无法改变这一点。

阅读更多关于轻松连接的信息

票数 1
EN

Stack Overflow用户

发布于 2015-03-04 15:22:52

这可能是当Oracle无法将主机名解析为IP时。你能用nslookup解析你的主机名吗?也就是说,

查找你的主机名

此外,请确保反向查找工作:

查询yourIpAddr

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28847710

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档