使用EZCONNECT语法时,sqlplus获取ORA-12504

时间:2015-09-17 18:51:39

标签: oracle oracle11g tns

与此人有相反的问题。 TNSPING OK but sqlplus gives ORA-12154?

我正在尝试在VMWare Workstation中的VM上安装Oracle。 我试图安装Oracle 11g和12c:

  • Windows Server 2008 R2
  • Windows Server 2012 R2
  • Windows Server 2016 Tech Preview 3(出于绝望)

在每种情况下,我都会看到“最低要求未达到”的对话框。 当我在AppData中检查安装日志时,我得到了这个。

  

检查localhost的IP地址是否可以   确定...严重:CVU不支持目标环境

我已尝试将我的VM设置为使用NAT以及使用桥接连接。 根据这个帖子,可以忽略'CVU错误'。 https://community.oracle.com/thread/2478769

Oracle每次都成功安装,它会自动在我的tnsnames.ora文件中插入一个条目。我可以通过sys

作为sys@TNS_ENTRY as sysdba用户进行连接

但是第二次我尝试使用EZCONNECT语法,它不起作用。例如:

>sqlplus /nolog
>connect sys@localhost:1521/service

然后我得到一个ORA-12504:TNS:监听器没有在CONNECT_DATA中获得SERVICE_NAME。这很奇怪,因为我甚至没有尝试使用tnsnames.ora文件中的条目进行连接。我尝试在Net Manager的sqlnet.ora配置管理器中推广EZCONNECT。

我已经确认Oracle安装程序确实将侦听器放在我的机器上,名为“LISTENER”

我有另一台运行Windows Server 2012 R2的服务器在裸机上运行。我交叉检查了所有tns,listener和sqlnet配置以及它们的相同(由11g安装程序创建的默认配置)

我知道VMWare支持其VM上的Oracle数据库。我试图坚持这里列出的这些最佳实践。 http://www.vmware.com/files/pdf/partners/oracle/Oracle_Databases_on_VMware_-_Best_Practices_Guide.pdf

我检查lsnrctl以确保它正确加载配置。 当我重新启动监听器

时,我看到了我的终端

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=mymachinename)(PORT=1521)))

防火墙已关闭。

这是tnsping的结果:

  

C:\ Users \ Administrator> tnsping localhost

     

适用于64位Windows的TNS Ping实用程序:版本11.2.0.1.0 - 生产   在17-SEP-2015 11:36:02

     

版权所有(c)1997,2010,Oracle。保留所有权利。

     

使用过的参数文件:   C:\应用\管理员\产品\ 11.2.0 \ dbhome_1 \网络\管理员\ SQLNET.ORA

     

使用EZCONNECT适配器解析别名尝试联系   (DESCRIPTION =(CONNECT_DATA =(SERVICE_NAME =))(ADDRESS =(PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)))   好的(0毫秒)

^看起来与我的2012 R2裸机服务器上的tnsping完全相同,其上有11g可用。

我错过了一些非常容易的东西吗?我很想知道这件事。

1 个答案:

答案 0 :(得分:5)

这是EZCONNECT语法的问题,而不是数据库配置,如Mark Williams所述here。连接字符串中的正斜杠令EZCONNECT混淆,它必须像这样转义:

C:\>sqlplus sys@\"localhost:1521/orcl12\" as sysdba

SQL*Plus: Release 12.1.0.2.0 Production on Fri Sep 18 13:10:19 2015

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

Enter password:

Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

SQL>