用pl/sql连接本地数据库时报ORA-12541:TNS:无监听程序

 

在dos窗口都能登录数据库,但通过PL/SQL登录是老是报 ORA-12541 或12154的错,在Oracl Net Manager 中也配置好了服务器命名和监听程序,查看系统配置文件系统参数文件为D:\oracle\product\10.1.0\db_1\network\admin\listener.ora tnsnames.ora 也都对,这个问题浪费了我好大把时间,终于在下面这位大神的介绍中给解决了,其方法就是启动listener:

运行->cmd启动dos窗口,执行lsnrctl stop关闭,lsnrctl start启动。重新登录就可以了!

 

 

 

外地回来,登录pl/sql出现错误:ORA-12541:TNS:无监听程序。

1. 检查oracle\product\10.1.0\db_1\NETWORK\log\listener.log

TNSLSNR for 32-bit Windows: Version 10.1.0.2.0 - Production on 04-1 -2010 13:38:34

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

系统参数文件为D:\oracle\product\10.1.0\db_1\network\admin\listener.ora

写入D:\oracle\product\10.1.0\db_1\network\log\listener.log的日志信息

写入D:\oracle\product\10.1.0\db_1\network\trace\listener.trc的跟踪信息

跟踪级别当前为0

pid=7180 开始

监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROCipc)))

监听该对象时出错: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=pc-xxx.mail.yyy.cn)(PORT=1521)))

TNS-12542: TNS: 地址已被占用

TNS-12560: TNS: 协议适配器错误

TNS-00512: 地址已在使用

32-bit Windows Error: 48: Unknown error

不再监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROCipc)))

2. Oraclelistener已经启动。

3. 查看oracle\product\10.1.0\db_1\NETWORK\ADMIN\listener.ora

# listener.ora Network Configuration File: D:\oracle\product\10.1.0\db_1\network\admin\listener.ora

# Generated by Oracle configuration tools.

SID_LIST_LISTENER =

(SID_LIST =

(SID_DESC =

(SID_NAME = PLSExtProc)

(ORACLE_HOME = D:\oracle\product\10.1.0\db_1)

(PROGRAM = extproc)

)

)

LISTENER =

(DESCRIPTION_LIST =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))

)

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = pc-xxx.mail.yyy.cn)(PORT = 1521))

)

)

)

(ADDRESS = (PROTOCOL = TCP)(HOST = pc-xxx.mail.yyy.cn)(PORT = 1521))

改为(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))

pc-xxx.mail.yyy.cn是计算机名

127.0.0.1也就是目前数据库正在用的ip地址。

4. 查看oracle\product\10.1.0\db_1\NETWORK\ADMIN\tnsnames.ora

找到下列语句:

ORCL =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = pc-xxx.mail.yyy.cn)(PORT = 1521))

)

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = orcl)

)

)

(ADDRESS = (PROTOCOL = TCP)(HOST = pc-xxx.mail.yyy.cn)(PORT = 1521))

改为(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))

5. 关闭后再启动listener

运行->cmd启动dos窗口,执行lsnrctl stop关闭,lsnrctl start启动。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值