今天装了个XE,但一连接就直接报12541错误,说无监听程序
下面是tnsnames的配置
XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = xrkj-e86332a8bd)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)
下面是listener的配置
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = D:\oracle\xe\app\oracle\product\10.2.0\server)
(PROGRAM = extproc)
)
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = D:\oracle\xe\app\oracle\product\10.2.0\server)
(PROGRAM = extproc)
)
)LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
(ADDRESS = (PROTOCOL = TCP)(HOST = xrkj-e86332a8bd)(PORT = 1521))
)
)DEFAULT_SERVICE_LISTENER = (XE)
xrkj-e86332a8bd为计算机名
用sqlplus连接的话是可以连接,但连接不了XE,如下:
connect sys/sys as sysdba 成功
connect sys/sys@XE as sysdba 报错:ORA-12541:TNS:无监听程序
但服务器的监听都是启动了的
就搞不懂了,望各位牛人赐教
下面是tnsnames的配置
XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = xrkj-e86332a8bd)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)
下面是listener的配置
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = D:\oracle\xe\app\oracle\product\10.2.0\server)
(PROGRAM = extproc)
)
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = D:\oracle\xe\app\oracle\product\10.2.0\server)
(PROGRAM = extproc)
)
)LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
(ADDRESS = (PROTOCOL = TCP)(HOST = xrkj-e86332a8bd)(PORT = 1521))
)
)DEFAULT_SERVICE_LISTENER = (XE)
xrkj-e86332a8bd为计算机名
用sqlplus连接的话是可以连接,但连接不了XE,如下:
connect sys/sys as sysdba 成功
connect sys/sys@XE as sysdba 报错:ORA-12541:TNS:无监听程序
但服务器的监听都是启动了的
就搞不懂了,望各位牛人赐教
监听正常啊。
C:\>lsnrctlLSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 08-12月-2011 19:0
7:12Copyright (c) 1991, 2005, Oracle. All rights reserved.欢迎来到LSNRCTL, 请键入"help"以获得信息。LSNRCTL> status
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC_FOR_XE)))
LISTENER 的 STATUS
------------------------
别名 LISTENER
版本 TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Produ
ction
启动日期 08-12月-2011 18:18:37
正常运行时间 0 天 0 小时 48 分 41 秒
跟踪级别 off
安全性 ON: Local OS Authentication
SNMP OFF
默认服务 XE
监听程序参数文件 D:\oracle\xe\app\oracle\product\10.2.0\server\network\
admin\listener.ora
监听程序日志文件 D:\oracle\xe\app\oracle\product\10.2.0\server\network\
log\listener.log
监听端点概要...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC_FOR_XEipc)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=xrkj-e86332a8bd)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=8080))(Presentation=
HTTP)(Session=RAW))
服务摘要..
服务 "CLRExtProc" 包含 1 个例程。
例程 "CLRExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
服务 "PLSExtProc" 包含 1 个例程。
例程 "PLSExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
服务 "XEXDB" 包含 1 个例程。
例程 "xe", 状态 READY, 包含此服务的 1 个处理程序...
服务 "XE_XPT" 包含 1 个例程。
例程 "xe", 状态 READY, 包含此服务的 1 个处理程序...
服务 "xe" 包含 1 个例程。
例程 "xe", 状态 READY, 包含此服务的 1 个处理程序...
命令执行成功
将tnsnames和listener的HOST=IP改为了HOST=localhost
如此启动后报“ ORA-12514: TNS: 监听程序无法识别连接描述符中请求的服务”错误
将 (SID_NAME = PLSExtProc) 改为 (SID_NAME = orcl) ,重启 listener 。
重新用 pl/sql 登录,报错:“ ORA-28547: TNS: 连接服务器失败,可能是 Net8 管理错误。”
删掉上述文件中的 (PROGRAM = extproc) ,重启 listener ,用 pl/sql 登录,成功。不知道为什么。
# listener.ora Network Configuration File: /opt/app/oracle/product/10.1.0/db_1/n
etwork/admin/listener.ora
# Generated by Oracle configuration tools.SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = orcl)
(ORACLE_HOME = /opt/app/oracle/product/10.1.0/db_1)
# (PROGRAM = extproc)
)
)LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
# (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = ems_dl580)(PORT = 1521))
)
)