在连接本机oracle数据库的时候提示:ORA-12541:TNS:没有监听程序

是在windows XP 系统 安装oracle数据库
网上面有一些说
该服务对应 %Oracle_Hoem\bin TNSLSNR.EXE
若该服务未启动,将会导致Oracle错误- Ora-12514:TNS:无监听程序。
但是我都不知道要怎么开启那个服务bin TNSLSNR.EXE我也没有看到

下面是 Oracle10 安装后,修改机器名的处理的部分操作.
其中包含 解决监听的问题 的处理办法。
你可以参考参考着解决。

首先需要解决监听的问题
lsnrctl status

D:\>lsnrctl status

LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 19-3月 -2011 13:3
7:31

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

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
TNS-12541: TNS: 无监听程序
TNS-12560: TNS: 协议适配器错误
TNS-00511: 无监听程序
32-bit Windows Error: 2: No such file or directory
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ORCL-10)(PORT=1521)))
TNS-01189: 监听程序无法验证用户

运行
「开始」菜单\程序\Oracle - OraDb10g_home1\配置和移植工具\Net Manager

修改 Oracle Net 配置
在 本地--服务命名--orcl 的地方
把 orcl 的 地址的 主机名, 由 ORCL-10 修改为 ORCL-10A

在 本地--监听程序--LISTENER 的地方
把 LISTENER 的地址2的 主机, 由 ORCL-10 修改为 ORCL-10A

上面是 例子里面, 修改机器名以后的操作
你不一定需要修改,但是你需要确认,信息对不对。
也就是 主机名字 或者 IP地址,以及端口信息什么的。

保存网络配置后退出。

启动 Oracle 的 Listener
D:\>lsnrctl start

LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 19-3月 -2011 13:4
5:16

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

启动tnslsnr: 请稍候...

TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production
系统参数文件为D:\oracle\product\10.2.0\db_1\network\admin\listener.ora
写入D:\oracle\product\10.2.0\db_1\network\log\listener.log的日志信息
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ORCL-10A)(PORT=1521)))

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
LISTENER 的 STATUS
------------------------
别名 LISTENER
版本 TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Produ
ction
启动日期 19-3月 -2011 13:45:19
正常运行时间 0 天 0 小时 0 分 3 秒
跟踪级别 off
安全性 ON: Local OS Authentication
SNMP OFF
监听程序参数文件 D:\oracle\product\10.2.0\db_1\network\admin\listener.o
ra
监听程序日志文件 D:\oracle\product\10.2.0\db_1\network\log\listener.log

监听端点概要...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ORCL-10A)(PORT=1521)))
服务摘要..
服务 "PLSExtProc" 包含 1 个例程。
例程 "PLSExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
命令执行成功

如果你执行 lsnrctl start 能够正确地执行完毕,那么这个 监听算是正常启动了。

参考资料:http://hi.baidu.com/wangzhiqing999/blog/item/0fe51c50bd37da0a3b293539.html

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-04-22
可以右击我的电脑->管理->服务里面应该有监听程序服务
第2个回答  2011-04-22
运行->cmd
DOS 窗口输入 c : \lsnrctl start
第3个回答  2011-04-21
使用前要设置ssid等东西。