C:\Documents and Settings\dliu>sqlplus
system/manager@liudongshan-lt:1521/us7
SQL*Plus: Release 10.2.0.1.0 - Production on Sun Jun 6
19:29:16 2010
Copyright (c) 1982, 2005, Oracle.All rights reserved.
ERROR:
ORA-12514: TNS:listener does not currently know of service
requested in connect
descriptor
检查了一下,怀疑是us7有问题,
于是
C:\Documents and
Settings\dliu>sqlplus system/manager@liudongshan-lt:1521/us7.tibco-support.com
SQL*Plus: Release 10.2.0.1.0 - Production on Sun Jun 6
20:56:07 2010
Copyright (c) 1982, 2005, Oracle.All rights reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 -
Production
With the Partitioning, OLAP and Data Mining options
SQL>
检查了一下,net
service的配置文档
用服务名进行数据库标识
Oracle数据库是作为服务呈现给客户机的,即数据库代表客户机执行工作。数据库可以有一个或多个与其有关的服务。到Oracle8i为止,Oracle数据库服务由Oracle系统标识符(SID)唯一标识。SID也由数据库内部使用,以作为指向系统全局区(SGA)的指针。客户机通过指定连接描述符中的SID连接到数据库实例。此命名方案不区分实例的服务。由于Oracle数据库可以分布到多个计算机上,因此在Oracle9i和Oracle8i中都指定了作为整体的服务和每个实例的服务。
服务名现在,数据库由其服务名进行标识。服务名由初始化参数文件中的SERVICE_NAMES参数指定。SERVICE_NAMES指定可能跨实例和/或节点的Oracle数据库服务的最高级别视图的名称。SERVICE_NAMES的默认值为全局数据库名,全局数据库名由数据库名称和域名组成。
实例名数据库实例由初始化参数文件中带有INSTANCE_NAME参数的实例名标识。INSTANCE_NAME对应于实例的SID。
连接描述符用SERVICE_NAME (没有S)参数配置连接描述符,以连接到Oracle9i或Oracle8i数据库。例如,以下连接描述符包含一个位于sales1-sun上的监听程序地址,此监听程序监听名为sales.us.acme.com的数据库服务的连接请求:sales=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=sales-sun1)(PORT=1521))
(CONNECT_DATA=
(SERVICE_NAME=sales.us.acme.com)))
也可以用INSTANCE_NAME参数配置连接描述符,以连接到数据库的特定实例。如果您具有带多个实例的Oracle9i Real Application Clusters,可能需要使用这种方法。例如,以下连接描述符包含一个位于sales-sun1上的监听程序地址,此监听程序监听与sales1数据库相关的名为sales1的实例的连接请求:sales=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=sales-sun1)(PORT=1521))
(CONNECT_DATA=
(SERVICE_NAME=sales.us.acme.com)
(INSTANCE_NAME=sales1)))