平台:Windoxs XP+Oracle 11G

当使用oralce的 Net Manager创建了一个名为“L3”的Listener后,要想使用lsnrctl启动和关闭 L3 还必须在tnsnames.ora 中配置一个名为L3的条目.

listener.ora

L3 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = princessd)(PORT = 1523))
  )

SID_LIST_L3 =
  (SID_LIST =
    (SID_DESC =
      (GLOBAL_DBNAME = m_oracle)
      (ORACLE_HOME = F:\app\Administrator\product\11.2.0\home)
      (SID_NAME = oracle)
    )
  )

ADR_BASE_L3 = f:\app\Administrator

*****************************************************************

tnsnames.ora

L3 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1523))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = m_oracle)
    )
  )

tnanames.ora 中,services_name 必须与你想连接的数据库所暴露出的GLOBAL_DBNAME 相同.

一个监听上是可以注册多个数据库的,而一个CONNECT_DATA只能指定一个services_name.

如果缺少 tnanames.ora 中对应的条目,L3 服务也能够起来。

因为启动监听的时候,会先启动对所定义的地址的监听程序,然后验证在TNAnames.ora中又没有对应的条目。

LSNRCTL> start L3
启动tnslsnr: 请稍候...

TNSLSNR for 32-bit Windows: Version 11.2.0.1.0 - Production
系统参数文件为F:\app\Administrator\product\11.2.0\home\NETWORK\ADMIN\listener.ora
写入f:\app\administrator\diag\tnslsnr\princessd\l3\alert\log.xml的日志信息
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=princessd)(PORT=1523)))

TNS-01101: 无法找到服务名称

虽然验证失败,但是后台的监听仍然是正确启动的,第一启动的时候还会创建一个 Windows服务,然后你就可以用那个Windows服务来启动和停止监听了。

但是如果想要用命令 stop L3来停止监听或者 status L3来查询状态,结果如下。因为lsnrctl在查询和关闭监听的时候,是先从tnsnames中找到对应的条目,

然后根据地址连接到监听程序,然后查询状态或者要求监听停止的。因为缺少名为L3的条目,所以不知道到那里查询或者停止监听.

LSNRCTL> stop L3
TNS-01101: 无法找到服务名称L3

LSNRCTL> status L3
TNS-01101: 无法找到服务名称L3

这个时候要么从Windows服务总去停止监听,或者添加对应的条目在tnsnames.ora中.

lsnrctl 与 tnsnames.ora 的联系的更多相关文章

  1. ORA-12541:TNS:no listener 客户端tnsnames.ora配置,以及服务端listener.ora配置

    需求:客户端(192.168.25.1)需要访问服务端(192.168.7.215)的Oracle库ORCL. 步骤一:配置客户端tnsnames.ora 步骤二:配置服务端listener.ora ...

  2. Oracle的tnsnames.ora配置(PLSQL Developer)

    首先打开tnsnames.ora的存放目录,一般为D:\app\Administrator\product\11.2.0\client_1\network\admin,就看安装具体位置了. 步骤阅读 ...

  3. tnsnames.ora 监听配置文件详解

    今天是重要的一天.将XML数据导入ORACLE遇到很多问题,学了好多,其中很长时间花在网络配置上,刚开始学,具体原因不知道,先把搜集到的好文章存下来,以后慢慢研究. 监听配置文件            ...

  4. oracle的listener.ora sqlnet.ora tnsnames.ora三个文件的关联性

    学习:http://www.cnblogs.com/william-lee/archive/2010/10/20/1856261.html 之前因为安装的是windows server 2008 r2 ...

  5. ORACLE RAC 下非缺省端口监听配置(listener.ora tnsnames.ora)

    不论是单实例还是RAC,对于非缺省端口下(1521)的监听器,pmon进程不会将service/instance注册到监听器,即不会实现动态注册.与单实例相同,RAC非缺省端口的监听器也是通过设置参数 ...

  6. oracle的sqlnet.ora , tnsnames.ora , Listener.ora 文件的作用(转)

    oracle网络配置三个配置文件 listener.ora.sqlnet.ora.tnsnames.ora ,都是放在$ORACLE_HOME/network/admin目录下.1. sqlnet.o ...

  7. oracle中的listener.ora和tnsnames.ora

    一.oracle的客户端与服务器端 oracle在安装完成后服务器和客户端都需要进行网络配置才能实现网络连接.    服务器端配置监听器,客户端配置网络服务名. 服务器端可配置一个或多个监听程序 . ...

  8. 记录一份Oracle 正确的监听配置文件listener.ora与tnsnames.ora

    一.前言 昨天中午接到领导指示,有其他组的负责人B在厄瓜多尔演示他们组的产品,然后我们组的负责人就想说也在那边搭一套环境,(北美那边的亚马逊云环境),让B帮忙演示下我们的系统. 于是,开始了一个比较曲 ...

  9. [转载]tnsnames.ora监听配置文件详解

    监听配置文件             为了使得外部进程 如 CAMS后台程序 能够访问 Oracle 数据库 必须配             置 Oracle 网络服务器环境 配置 Oracle 网络 ...

随机推荐

  1. Scala 中的foreach和map方法比较

    Scala中的集合对象都有foreach和map两个方法.两个方法的共同点在于:都是用于遍历集合对象,并对每一项执行指定的方法.而两者的差异在于:foreach无返回值(准确说返回void),map返 ...

  2. 第6章—渲染web视图—使用Thymeleaf

    使用Thymeleaf 长期以来,jsp在视图领域有非常重要的地位,随着时间的变迁,出现了一位新的挑战者:Thymeleaf,Thymeleaf是原生的,不依赖于标签库.它能够在接受原始HTML的地方 ...

  3. spring boot整合RabbitMQ(Direct模式)

    springboot集成RabbitMQ非常简单,如果只是简单的使用配置非常少,springboot提供了spring-boot-starter-amqp项目对消息各种支持. Direct Excha ...

  4. 【C#小知识】C#中一些易混淆概念总结(八)---------解析接口 分类: C# 2014-02-18 00:09 2336人阅读 评论(4) 收藏

     这一篇主要来解析关于面向对象中最总要的一个概念--接口. 对于接口来说,C#是有规定使用Interface关键字来声明接口.它的声明是和类一致的.可以说接口就是一个特殊的抽象类.如下代码: cl ...

  5. Javac之glb与lub

    5.1.10. Capture Conversion Let G name a generic type declaration (§8.1.2, §9.1.2) with n type parame ...

  6. 在Java Web项目中,不用ActionContext类来获得tomcat部署项目的绝对路径

    例子:sendIosApns.class.getClassLoader().getResource("").getFile().replaceAll("%20" ...

  7. 在你的 Rails App 中开启 ETag 加速页面载入同时节省资源

    转自http://huacnlee.com/blog/use-etag-in-your-rails-app-to-speed-up-loading/ 什么是 ETag 网上关于 ETag 的解释有很多 ...

  8. webapi找到了与该请求匹配的多个操作

    关于这个问题是路由在找方法的时候层没有指定对,同一个链接,同样的参数导致路由找不到方法导致的报错,可以在WebApiConfig中多配置一层,比如"api/{controller}/{act ...

  9. sql server 运算

    --Sql Server 乘法运算--select (d.RepaymentSchedule*d.MonthlyPayment) as ExpectedReceivablePayment from T ...

  10. PowerDesigner设置默认值名称规则

    一.需求背景: 使用PowerDesigner创建表时,若设置某列默认值时,自动生成规则的默认值名称.比如说:DF_表名_列名 二.设置步骤: 1.选择Database—>Edit Curren ...